diff --git a/S/145redis.properties b/S/145redis.properties deleted file mode 100644 index a3bd7f9..0000000 --- a/S/145redis.properties +++ /dev/null @@ -1,7 +0,0 @@ -#@author ruining.he -#redis.model -> install model {single,codis} - -#if model is codis,use config as below -redis.model=single -redis.ip=172.18.1.145 -redis.port=6379 \ No newline at end of file diff --git a/S/1_kafka.properties b/S/1_kafka.properties deleted file mode 100644 index 73d70b4..0000000 --- a/S/1_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.119:9992 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/S/2_kafka.properties b/S/2_kafka.properties deleted file mode 100644 index 5aa0c9c..0000000 --- a/S/2_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.178:9092,172.18.1.181:9092,172.18.1.182:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=latest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/S/3_kafka.properties b/S/3_kafka.properties deleted file mode 100644 index 6e17ba3..0000000 --- a/S/3_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.114:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/S/4_kafka.properties b/S/4_kafka.properties deleted file mode 100644 index b87185c..0000000 --- a/S/4_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=50.19.49.16:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/S/5_kafka.properties b/S/5_kafka.properties deleted file mode 100644 index 6fed870..0000000 --- a/S/5_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.113:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/S/aadb.properties b/S/aadb.properties deleted file mode 100644 index 6614c24..0000000 --- a/S/aadb.properties +++ /dev/null @@ -1,5 +0,0 @@ -logfile=DBConnectManager.log -db_stat_alltask.maxconn=100 -db_stat_alltask.url=jdbc:mysql://172.18.1.134:3306/all_task?useUnicode=true&characterEncoding=utf-8 -db_stat_alltask.user=root -db_stat_alltask.password=Bfd123!@# \ No newline at end of file diff --git a/S/db.properties b/S/db.properties deleted file mode 100644 index 1a5e1bc..0000000 --- a/S/db.properties +++ /dev/null @@ -1,10 +0,0 @@ -logfile=DBConnectManager.log -drivers=com.mysql.jdbc.Driver -db_stat.maxconn=100 -db_stat.url=jdbc:mysql://172.18.1.101:3306/intelligent_crawl?useUnicode=true&characterEncoding=utf-8 -db_stat.user=crawl -db_stat.password=crawl123 -db_stat_alltask.maxconn=100 -db_stat_alltask.url=jdbc:mysql://172.18.1.101:3306/all_task?useUnicode=true&characterEncoding=utf-8 -db_stat_alltask.user=crawl -db_stat_alltask.password=crawl123= \ No newline at end of file diff --git a/S/elasticsearch_1.properties b/S/elasticsearch_1.properties deleted file mode 100644 index e1834e3..0000000 --- a/S/elasticsearch_1.properties +++ /dev/null @@ -1,10 +0,0 @@ -crawl.elasticsearch.metadata.broker.list=172.26.11.111:9201 -crawl.elasticsearch.socket.timeout.interval.ms=5000 -crawl.elasticsearch.connect.timeout.ms=1000 -crawl.elasticsearch.max.connect.num=100 -crawl.elasticsearch.max.connect.per.route.num=100 -crawl.elasticsearch.max.retry.timeout=300000 -crawl.elasticsearch.producer.max.cache.num=2000 -crawl.elasticsearch.producer.max.write.time=120000 -crawl.elasticsearch.consumer.quary.num=2000 -crawl.elasticsearch.consumer.scroll.time=3 diff --git a/S/elasticsearch_2.properties b/S/elasticsearch_2.properties deleted file mode 100644 index fbe9670..0000000 --- a/S/elasticsearch_2.properties +++ /dev/null @@ -1,10 +0,0 @@ -crawl.elasticsearch.metadata.broker.list=172.26.11.109:9201 -crawl.elasticsearch.socket.timeout.interval.ms=60000 -crawl.elasticsearch.connect.timeout.ms=50000 -crawl.elasticsearch.max.connect.num=100 -crawl.elasticsearch.max.connect.per.route.num=100 -crawl.elasticsearch.max.retry.timeout=300000 -crawl.elasticsearch.producer.max.cache.num=1000 -crawl.elasticsearch.producer.max.write.time=100000 -crawl.elasticsearch.consumer.quary.num=1000 -crawl.elasticsearch.consumer.scroll.time=3 diff --git a/S/log4j.properties b/S/log4j.properties deleted file mode 100644 index f435390..0000000 --- a/S/log4j.properties +++ /dev/null @@ -1,21 +0,0 @@ -log4j.rootLogger=debug - -log4j.logger.com.bfd.mf.service = DEBUG,SERVICE -log4j.logger.com.bfd.mf.datasave = DEBUG,DATASAVE -#service log -log4j.appender.SERVICE=org.apache.log4j.DailyRollingFileAppender -log4j.appender.SERVICE.Threshold=DEBUG -log4j.appender.SERVICE.File=../logs/service/service.log -log4j.appender.SERVICE.DatePattern='.'yyyy-MM-dd -log4j.appender.SERVICE.layout=org.apache.log4j.PatternLayout -log4j.appender.SERVICE.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n - -log4j.logger.com.bfd.mf.datasave = DEBUG,DATASAVE -#datasave log -log4j.appender.DATASAVE=org.apache.log4j.DailyRollingFileAppender -log4j.appender.DATASAVE.Threshold=DEBUG -log4j.appender.DATASAVE.File=../logs/datasave/datasave.log -log4j.appender.DATASAVE.DatePattern='.'yyyy-MM-dd -log4j.appender.DATASAVE.layout=org.apache.log4j.PatternLayout -log4j.appender.DATASAVE.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n - \ No newline at end of file diff --git a/S/posTag.txt b/S/posTag.txt deleted file mode 100644 index 827e5ee..0000000 --- a/S/posTag.txt +++ /dev/null @@ -1,36 +0,0 @@ -u -ud -ude1 -ude2 -ude3 -udeng -udh -ug -uguo -uj -ul -ule -ulian -uls -usuo -uv -uyy -uz -uzhe -uzhi -w -wb -wd -wf -wh -wj -wky -wkz -wm -wn -wp -ws -wt -ww -wyy -wyz \ No newline at end of file diff --git a/S/redis.properties b/S/redis.properties deleted file mode 100644 index 6f803aa..0000000 --- a/S/redis.properties +++ /dev/null @@ -1,7 +0,0 @@ -#@author ruining.he -#redis.model -> install model {single,codis} - -#if model is codis,use config as below -redis.model=single -redis.ip=172.18.1.152 -redis.port=6379 \ No newline at end of file diff --git a/S/stopWords.txt b/S/stopWords.txt deleted file mode 100644 index 94bc1ce..0000000 --- a/S/stopWords.txt +++ /dev/null @@ -1,1280 +0,0 @@ -嗳 -要 -这些 -赶早不赶晚 -感觉 -嗬 -毫不 -嗯 -大张旗鼓 -" -# - -! -& -' -$ -% -* -+ -( -) -她们 -. -/ -, -︿ -- -3 -2 -不止 -1 -0 -7 -6 -这里 -5 -4 -颇 -; -: -9 -如此 -8 -? -极度 -> -= -首先 -< -也罢 -@ -A -当庭 -见 -更 -不少 -] -\ -_ -^ -替 -[ -大大 -到目前为止 -开始 -` -三番两次 -这么 -大多 -结果 -权时 -喂 -如下 -矣 -如上 -喀 -~ -喏 -| -放量 -当年 -不对 -顷刻 -是 -岂非 -看 -哪边 -立马 -乘势 -何况 -啥 -这个 -啦 -率尔 -那种 -仍然 -相对而言 -啐 -累年 -啊 -开外 -现在 -大概 -依照 -· -总而言之 -乃至 -比如说 -多次 -切切 -不亦乐乎 -顺 -顷 -呆呆地 -略为 -更为 -倍加 -不定 -之后 -着 -风雨无阻 -对于 -唉 -彻夜 -! -# -来得及 -% -哦 -$ -的 -& -) -哪 -( -+ -* -哩 -, -0 -1 -2 -这么些 -3 -4 -5 -不至于 -6 -7 -8 -这部 -9 -几时 -: -; -< -> -? -哼 -@ -如今 -哇 -哈 -哉 -尽量 -总的说来 -哎 -方才 -乘胜 -极 -倘或 -哗 -被 -[ -出去 -哟 -] -咦 -切不可 -是否 -而况 -加以 -我们 -咳 -咱 -| -} -~ -{ -岂止 -某 -看上去 -和 -如常 -任何 -咋 -具体地说 -凝神 -各自 -千万 -咚 -纯粹 -只限 -恐怕 -呢 -莫非 -虽然 -呸 -本 -即若 -等等 -按照 -呵 -发表 -具体说来 -望 -朝 -不要 -怎样 -呀 -呃 -轰然 -月 -有 -每当 -接连不断 -呜 -最 -呐 -不比 -呕 -呗 -理应 -吧 -那里 -日渐 -以免 -来 -别人 -饱 -吱 -看来 -同 -沙沙 -后 -趁势 -切莫 -尽心尽力 -各 -切勿 -¥ -白 -� -保管 -吗 -此中 -默然 -向 -吓 -的确 -让 -末##末 -不然的话 -趁早 -论 -挨门挨户 -挨次 -保险 -莫若 -嗡嗡 -是的 -请勿 -该 -消息 -一定 -刚才 -略微 -亲眼 -差不多 -倘若 -说 -— -起来 -’ -‘ -” -“ -惯常 -何止 -… -到了儿 -再者 -并且 -趁着 -如何 -不由得 -怎么样 -旁人 -由 -不管 -甭 -哪里 -甫 -用 -倒不如说 -均 -长此下去 -多少 -匆匆 -虽则 -既然 -纵使 -呼哧 -联袂 -或许 -俺们 -倘然 -只是 -不如 -更进一步 -不仅...而且 -极为 -尽然 -略 -长期以来 -不止一次 -不妨 -表示 -地 -较比 -在 -从古到今 -尽如人意 -确实 -川流不息 -并没有 -纵令 -恰巧 -四 -无宁 -近年来 -因 -起首 -, -方 -大略 -将要 -极了 -但是 -固 -屡屡 -到底 -在下 -猛然间 -很多 -趁机 -。 -越是 -、 -  -》 -《 -〉 -〈 -不外 -使得 -既 -【 -】 -不大 -以便 -当下 -它们 -如上所述 -每个 -彼此 -达旦 -当口儿 -看起来 -或多或少 -当中 -据我所知 -遵照 -固然 -策略地 -换言之 -缕缕 -居然 -连日来 -比照 -起见 -嘎 -因而 -嘘 -不论 -嘛 -沿着 -恍然 -亲身 -故 -哼唷 -本着 -除外 -论说 -简直 -大家 -嘻 -嘿 -敢 -不怎么 -如次 -亲手 -顿时 -顺着 -叮当 -敞开儿 -冲 -跟 -上来 -拿 -不曾 -着呢 -背靠背 -多多益善 -冒 -他人 -下来 -何须 -内 -尚且 -很少 -不仅仅 -出 -顷刻间 - -趁 -恰似 -敢情 -率然 -凭 -每每 -几 -他们 -成为 -尽快 -把 -当即 -据悉 -前者 - [ -处处 - ] -断然 -绝非 -总的来看 -分期 -我们 -每次 -从优 -常言说得好 -由于 -难说 -从今以后 -所 -比如 -才 -精光 -起 -于是 -赶 -平素 -打 -一样 -长线 -每时每刻 -不择手段 -共 -拦腰 -其 -屡次 -当然 -宁愿 -举凡 -八 -六 -兮 -十分 -我 -串行 -或 -牢牢 -成心 -光 -与此同时 -哈哈 -换句话说 -除非 -以至于 -况且 -独 -除却 -反手 -成年 -哎呀 -这儿 -累次 -论坛 -诚然 -怎么办 -决不 -自各儿 -这么样 -除去 -由此可见 -像 -绝顶 -社会主义 -不外乎 -毋宁 -背地里 -.. -据 -此间 -哪儿 -为什么 -倍 -那会儿 -来不及 -迫于 -不起 -可能 -千万千万 -// -正如 -借 -倘 -究竟 -及其 -据称 -谁 -敢于 -伙同 -朝着 -临到 -哎哟 -即将 -尽心竭力 -已经 -亲口 -出来 -另一个 --- -诸位 -那时 -即是说 -按 -谨 -此外 -何时 -然后 -勃然 -奋勇 -仅仅 -故而 -历 -乌乎 -主要 -借以 -去 -间或 -方能 -并没 -除此之外 -过 -马上 -迄 -传说 -恰恰 -还 -这 -连 -近 -用户名 -这边 -及 -从不 -边 -又 -您 -连同 -较 -怎么 -互相 -但愿 -可 -你们 -凑巧 -叫 -路经 -另 -起先 -二话没说 -之一 -化 -连连 -当儿 -各式 -其后 -独自 -照 -趁便 -甚至 -那末 -该当 -呜呼 -的话 -挨着 -有的 -够瞧的 -何乐而不为 -然 -单 -进去 -无论 -怎 -据说 -综上所述 -抽冷子 -才能 -怕 -千 -极大 -恰逢 -半 -而是 -即 -不但...而且 -倘使 -怪 -本身 -乘隙 -焉 -反倒 -理当 -交口 -基本上 -认为 -这会儿 -不迭 -倍感 -老是 -┃ -反之 -哪怕 -除此而外 -顶多 -而又 -不时 -自家 -啊呀 -发生 -哗啦 -多年来 -那边 -那么些 -完全 -某个 -起初 -应该 -进一步 -不是 -日见 -而后 -例如 -切 -多多 -较之 -那样 -齐 -不料 -则 -刚 -初 -乘虚 -能够 -从严 -故意 -啊哟 -别 -从中 -分头 -较为 -到 ->> -假如 -甚么 -作为 -何必 -不过 -啊哈 -某些 -不日 -正在 -一来 -三番五次 -为何 -进而 -通过 -若非 -日益 -倒不如 -逢 -立地 -不只 -一般 -豁然 -将近 -不可开交 -就算 -全力 -... -各位 -基本 -不拘 -隔夜 -不胜 -除开 -暗中 -腾 -而外 -宁可 -除此以外 -单单 -何处 -几度 -吧哒 -即便 -那 -本人 -己 -已 -趁热 -人民 -不能 -并肩 -根据 -也好 -什么样 -扑通 -即使 -与否 -高低 -何妨 -简言之 -如期 -不管怎样 -将才 -大约 -其次 -满 -除了 -都 -标题 -难道 -不可 -至 -陡然 -为了 -及至 -虽说 -臭 -嘎嘎 -不同 -自 -大体上 -而 -还要 -老 -者 -人人 -比方 -简而言之 -谁知 -屡 -应当 -人家 -单纯 -继之 -这么点儿 -八成 -光是 -忽然 -从头 -尽 -哪年 -竟然 -就 -省得 -从此以后 -不力 -各个 -充其极 -次第 -尽管如此 -偶而 -甚而 -截然 -接着 -极端 -嘎登 -皆可 -这就是说 -将 -从早到晚 -好在 -取道 -这种 -上去 -碰巧 -紧接着 -不单 -一旦 -纵 -纯 -各种 -连袂 -什么 -绝 -给 -后来 -暗自 -经 -不然 -从重 -果真 -要不是 -并排 -自己 -岂 -差一点 -能 -藉以 -不惟 -此后 -待到 -哪些 -其他 -毫无 -连声 -归 -当 -几经 -九 -也 -乘 -从小 -乒 -彼 -乎 -刚好 -么 -如若 -之 -默默地 -乃 -为 -得起 -借此 -汝 -然而 -从此 -按时 -反倒是 -临 -个 -从无到有 -中 -反之则 -弗 -姑且 -与其 -哪个 -反而 -常言道 -不再 -大抵 -且 -意思 -三 -上 -不 -与 -一 -七 -两者 -不经意 -等到 -必 -来着 -尽管 -知道 -任 -以 -似的 -个人 -其余 -们 -莫 -当着 -他 -就是说 -沿 -快 -仅 -没 -来看 -仍 -从 -往 -大凡 -而言 -待 -当真 -因此 -很 -据此 -那么样 -纵然 -得 -互 -五 -—— -必须 -向着 -或是 -毕竟 -了 -二 -于 -可以 -你 -要不 -当场 -那儿 -来讲 -局外 -但 -并 -赶快 -需要 -即令 -活 -不特 -然则 -何 -不独 -一则 -何苦 -猛然 -传 -设使 -经过 -至于 -老老实实 -截至 -譬如 -一切 -要么 -别的 -常 -按期 -何尝 -动不动 -因为 -会 -按说 -如果 -带 -自从 -宁肯 -不光 -之类 -尽可能 -老大 -成年累月 -尔后 -俺 -从宽 -朋友 -就此 -粗 -归根结底 -据实 -不免 -若 -不成 -不仅仅是 -长话短说 -设若 -慢说 -诸如 -便 -以至 -以致 -之所以 -前后 -果然 -共总 -时候 -依 -鄙人 -大 -等 -大面儿上 -年复一年 -打开天窗说亮话 -假若 -快要 -而且 -此刻 -假使 -陈年 -另方面 -到处 -大体 -云云 -全然 -为着 -每逢 -多 -只要 -常常 -日臻 -得天独厚 -另外 -并无 -届时 -她 -尔等 -不消 -如其 -反之亦然 -奇 -方法 -奈 -必定 -第 -岂但 -古来 -啪达 -顷刻之间 -别说 -传闻 -总的来说 -非徒 -非得 -可是 -不可抗拒 -继而 -如 -凭借 -略加 -绝对 -理该 -喔唷 -仍旧 -以及 -到头来 -抑或 -一方面 -只有 -咱们 -从新 -这样 -不得已 -管 -自个儿 -呼啦 -必将 -而论 -于是乎 -其一 -此 -看样子 -全身心 -有人 -按理 -也许 -打从 -照着 -觉得 -不了 -不得 -关于 -恰恰相反 -其中 -动辄 -立刻 -倒是 -毫无例外 -从古至今 -可见 -莫不 -亲自 -经常 -不得了 -不必 -有些 -挨个 -不仅 -进来 -大事 -全年 -总之 -当头 -若是 -竟 -要不然 -分期分批 -如此等等 -那么 -其二 -立 -不会 -不怕 -不问 -每 -没有 -公然 -比 -还有 -不限 -偏偏 -故此 -弹指之间 -那些 -窃 -叮咚 -而已 -到头 -不但 -随着 -不得不 -非常 -非但 -殆 -如前所述 -从来 -近几年来 -近来 -莫如 -谢谢 -比起 -穷年累月 -怪不得 -白白 -反过来 -除 -全都 -全部 -从速 -上下 -哪样 -从未 -不能不 -那个 -迟早 -不知不觉 -挨家挨户 -多多少少 -几番 -有关 -连日 -阿 -这时 -即或 -它 -哪天 -宁 -地方 -就是 -乘机 -常言说 -不下 -定 -昂然 -毫无保留地 -屡次三番 -充其量 -另一方面 -既...又 -瑟瑟 -或者 -反过来说 -立时 -再说 -嘿嘿 -过于 -零 -就地 -极其 -随 -起头 -离 -梆 -漫说 -大举 -接下来 -忽地 -难得 -格外 -从而 -还是 -对 -既是 -可好 -不满 -充分 -并非 -鉴于 -目前 -要是 -虽 -一下 -自身 -任凭 -几乎 -靠 -一个 -否则 -砰 -三天两头 -难怪 -所以 -罢了 -大致 -从轻 -不巧 -加之 -大不了 -归根到底 -偶尔 -二话不说 -大都 -愤然 -多年前 -蛮 -一些 -楼主 -日复一日 -即刻 -其它 -决非 -恰如 -不已 -加上 -具体来说 -直到 -多亏 -隔日 -暗地里 -挨门逐户 -恰好 -其实 -万一 -基于 -尽早 -刚巧 -概 -主楼 -同时 -更加 -绝不 -除此 -不常 -另行 -急匆匆 -话说 -存心 -极力 \ No newline at end of file diff --git a/S/stopWordsEN.txt b/S/stopWordsEN.txt deleted file mode 100644 index d3bdbff..0000000 --- a/S/stopWordsEN.txt +++ /dev/null @@ -1,891 +0,0 @@ -'d -'ll -'m -'re -'s -'t -'ve -ZT -ZZ -a -a's -able -about -above -abst -accordance -according -accordingly -across -act -actually -added -adj -adopted -affected -affecting -affects -after -afterwards -again -against -ah -ain't -all -allow -allows -almost -alone -along -already -also -although -always -am -among -amongst -an -and -announce -another -any -anybody -anyhow -anymore -anyone -anything -anyway -anyways -anywhere -apart -apparently -appear -appreciate -appropriate -approximately -are -area -areas -aren -aren't -arent -arise -around -as -aside -ask -asked -asking -asks -associated -at -auth -available -away -awfully -b -back -backed -backing -backs -be -became -because -become -becomes -becoming -been -before -beforehand -began -begin -beginning -beginnings -begins -behind -being -beings -believe -below -beside -besides -best -better -between -beyond -big -biol -both -brief -briefly -but -by -c -c'mon -c's -ca -came -can -can't -cannot -cant -case -cases -cause -causes -certain -certainly -changes -clear -clearly -co -com -come -comes -concerning -consequently -consider -considering -contain -containing -contains -corresponding -could -couldn't -couldnt -course -currently -d -date -definitely -describe -described -despite -did -didn't -differ -different -differently -discuss -do -does -doesn't -doing -don't -done -down -downed -downing -downs -downwards -due -during -e -each -early -ed -edu -effect -eg -eight -eighty -either -else -elsewhere -end -ended -ending -ends -enough -entirely -especially -et -et-al -etc -even -evenly -ever -every -everybody -everyone -everything -everywhere -ex -exactly -example -except -f -face -faces -fact -facts -far -felt -few -ff -fifth -find -finds -first -five -fix -followed -following -follows -for -former -formerly -forth -found -four -from -full -fully -further -furthered -furthering -furthermore -furthers -g -gave -general -generally -get -gets -getting -give -given -gives -giving -go -goes -going -gone -good -goods -got -gotten -great -greater -greatest -greetings -group -grouped -grouping -groups -h -had -hadn't -happens -hardly -has -hasn't -have -haven't -having -he -he's -hed -hello -help -hence -her -here -here's -hereafter -hereby -herein -heres -hereupon -hers -herself -hes -hi -hid -high -higher -highest -him -himself -his -hither -home -hopefully -how -howbeit -however -hundred -i -i'd -i'll -i'm -i've -id -ie -if -ignored -im -immediate -immediately -importance -important -in -inasmuch -inc -include -indeed -index -indicate -indicated -indicates -information -inner -insofar -instead -interest -interested -interesting -interests -into -invention -inward -is -isn't -it -it'd -it'll -it's -itd -its -itself -j -just -k -keep -keeps -kept -keys -kg -kind -km -knew -know -known -knows -l -large -largely -last -lately -later -latest -latter -latterly -least -less -lest -let -let's -lets -like -liked -likely -line -little -long -longer -longest -look -looking -looks -ltd -m -made -mainly -make -makes -making -man -many -may -maybe -me -mean -means -meantime -meanwhile -member -members -men -merely -mg -might -million -miss -ml -more -moreover -most -mostly -mr -mrs -much -mug -must -my -myself -n -n't -na -name -namely -nay -nd -near -nearly -necessarily -necessary -need -needed -needing -needs -neither -never -nevertheless -new -newer -newest -next -nine -ninety -no -nobody -non -none -nonetheless -noone -nor -normally -nos -not -noted -nothing -novel -now -nowhere -number -numbers -o -obtain -obtained -obviously -of -off -often -oh -ok -okay -old -older -oldest -omitted -on -once -one -ones -only -onto -open -opened -opening -opens -or -ord -order -ordered -ordering -orders -other -others -otherwise -ought -our -ours -ourselves -out -outside -over -overall -owing -own -p -page -pages -part -parted -particular -particularly -parting -parts -past -per -perhaps -place -placed -places -please -plus -point -pointed -pointing -points -poorly -possible -possibly -potentially -pp -predominantly -present -presented -presenting -presents -presumably -previously -primarily -probably -problem -problems -promptly -proud -provides -put -puts -q -que -quickly -quite -qv -r -ran -rather -rd -re -readily -really -reasonably -recent -recently -ref -refs -regarding -regardless -regards -related -relatively -research -respectively -resulted -resulting -results -right -room -rooms -run -s -said -same -saw -say -saying -says -sec -second -secondly -seconds -section -see -seeing -seem -seemed -seeming -seems -seen -sees -self -selves -sensible -sent -serious -seriously -seven -several -shall -she -she'll -shed -shes -should -shouldn't -show -showed -showing -shown -showns -shows -side -sides -significant -significantly -similar -similarly -since -six -slightly -small -smaller -smallest -so -some -somebody -somehow -someone -somethan -something -sometime -sometimes -somewhat -somewhere -soon -sorry -specifically -specified -specify -specifying -state -states -still -stop -strongly -sub -substantially -successfully -such -sufficiently -suggest -sup -sure -t -t's -take -taken -taking -tell -tends -th -than -thank -thanks -thanx -that -that'll -that's -that've -thats -the -their -theirs -them -themselves -then -thence -there -there'll -there's -there've -thereafter -thereby -thered -therefore -therein -thereof -therere -theres -thereto -thereupon -these -they -they'd -they'll -they're -they've -theyd -theyre -thing -things -think -thinks -third -this -thorough -thoroughly -those -thou -though -thoughh -thought -thoughts -thousand -three -throug -through -throughout -thru -thus -til -tip -to -today -together -too -took -toward -towards -tried -tries -truly -try -trying -ts -turn -turned -turning -turns -twice -two -u -un -under -unfortunately -unless -unlike -unlikely -until -unto -up -upon -ups -us -use -used -useful -usefully -usefulness -uses -using -usually -uucp -v -value -various -very -via -viz -vol -vols -vs -w -want -wanted -wanting -wants -was -wasn't -way -ways -we -we'd -we'll -we're -we've -wed -welcome -well -wells -went -were -weren't -what -what'll -what's -whatever -whats -when -whence -whenever -where -where's -whereafter -whereas -whereby -wherein -wheres -whereupon -wherever -whether -which -while -whim -whither -who -who'll -who's -whod -whoever -whole -whom -whomever -whos -whose -why -widely -will -willing -wish -with -within -without -won't -wonder -words -work -worked -working -works -world -would -wouldn't -www -x -y -year -years -yes -yet -you -you'd -you'll -you're -you've -youd -young -younger -youngest -your -youre -yours -yourself -yourselves -z -zero -zt -zz \ No newline at end of file diff --git a/cl_search_api/cl_search_api.iml b/cl_search_api/cl_search_api.iml deleted file mode 100644 index c46b9a2..0000000 --- a/cl_search_api/cl_search_api.iml +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_search_api/pom.xml b/cl_search_api/pom.xml deleted file mode 100644 index d5a2686..0000000 --- a/cl_search_api/pom.xml +++ /dev/null @@ -1,244 +0,0 @@ - - - 4.0.0 - - - cl_stream - com.bfd.mf - 2.0-SNAPSHOT - - - cl_search_api - Search V2.0 API - cl_search_api - 2.0-SNAPSHOT - - - - - com.bfd.mf.SearchApplication - 1.8 - 6.0.0 - 2.0.0.RELEASE - 2.0.0.RELEASE - 5.0.4.RELEASE - 4.4 - 4.1.0 - 9.4.8.v20171121 - 1.1.6 - 19.0 - 3.15 - 1.8 - UTF-8 - UTF-8 - - - - - - jdk.tools - jdk.tools - 1.8 - - - org.springframework - spring-webmvc - ${springframework.version} - - - org.springframework - spring-core - ${springframework.version} - - - org.springframework.boot - spring-boot-starter-web - ${springframework.boot.version} - - - org.springframework.boot - spring-boot-starter-json - - - org.springframework - spring-web - - - org.springframework - spring-webmvc - - - - - org.springframework.boot - spring-boot-starter-test - ${springframework.boot.version} - - - org.springframework.boot - spring-boot-starter-data-jpa - ${springframework.boot.version} - - - org.springframework.boot - spring-boot-devtools - ${springframework.boot.version} - - true - - - - org.mybatis.spring.boot - mybatis-spring-boot-starter - 1.3.1 - - - org.springframework.boot - spring-boot-autoconfigure - - - - - - org.elasticsearch - elasticsearch - ${es.version} - - - org.elasticsearch.client - transport - ${es.version} - - - - org.apache.poi - poi - ${poi.version} - - - org.apache.poi - poi-ooxml - ${poi.version} - - - - com.alibaba - fastjson - 1.1.22 - - - - org.projectlombok - lombok - 1.16.20 - - - com.google.guava - guava - 19.0 - - - mysql - mysql-connector-java - 5.1.29 - - - org.jodd - jodd-core - 3.4.8 - - - - com.swagger.ui - swagger-bootstrap-ui - 1.8.8 - - - io.springfox - springfox-swagger2 - 2.6.1 - - - guava - com.google.guava - - - - - - org.apache.commons - commons-lang3 - 3.2.1 - - - com.bfd.nlp - nlp_common_util - 1.1 - - - httpclient - org.apache.httpcomponents - - - - - - com.fasterxml.jackson.core - jackson-databind - 2.9.5 - - - - - - - - - - - - - - - - - - net.logstash.logback - logstash-logback-encoder - 4.4 - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.8 - 1.8 - - - - org.springframework.boot - spring-boot-maven-plugin - - com.bfd.mf.SearchApplication - - - - - repackage - - - - - - - - - \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/SearchApplication.java b/cl_search_api/src/main/java/com/bfd/mf/SearchApplication.java deleted file mode 100644 index d6cd4e2..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/SearchApplication.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.bfd.mf; - -import org.mybatis.spring.annotation.MapperScan; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -import java.io.IOException; - -@SpringBootApplication -@MapperScan("com.bfd.mf") -public class SearchApplication { - private static final Logger LOGGER = LoggerFactory.getLogger(SearchApplication.class); - public static void main(String[] args) throws IOException { - LOGGER.info("[SearchApplication] Start SearchApplication REST API..."); - SpringApplication.run(SearchApplication.class, args); - LOGGER.info("[SearchApplication] Start SearchApplication REST API finish..."); - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/ISubjectClusterService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/ISubjectClusterService.java deleted file mode 100644 index 2176ab5..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/ISubjectClusterService.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.bfd.mf.common.service; - -public interface ISubjectClusterService { - - int createIndexBySubject(Long companyId,Long subjectId); - - boolean deleteIndexBySubject(Long companyId,Long subjectId); - - -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/alexa/SourceAlexaManager.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/alexa/SourceAlexaManager.java deleted file mode 100644 index 468e7ef..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/alexa/SourceAlexaManager.java +++ /dev/null @@ -1,65 +0,0 @@ -//package com.bfd.mf.common.service.alexa; -// -//import com.bfd.mf.common.service.base.impl.GenericManagerImpl; -//import com.bfd.mf.common.web.entity.mysql.SourceAlexa; -//import com.bfd.mf.common.web.repository.mysql.SourceAlexaRepository; -//import com.bfd.nlp.common.util.string.TStringUtils; -//import org.slf4j.Logger; -//import org.slf4j.LoggerFactory; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.stereotype.Service; -// -//import java.util.HashMap; -//import java.util.List; -//import java.util.Map; -// -//@Service -//public class SourceAlexaManager extends GenericManagerImpl { -// private static final Logger logger = LoggerFactory.getLogger(SourceAlexaManager.class); -// SourceAlexaRepository sourceAlexaRepository; -// @Autowired -// public void setSourceAlexaRepository(SourceAlexaRepository sourceAlexaRepository) { -// this.sourceAlexaRepository = sourceAlexaRepository; -// this.dao = this.sourceAlexaRepository; -// } -// -// /** -// * 通过网站名称来匹配 -// * @return -// */ -// public Map findAllSourceAlexaBySiteName(){ -// Map scoreMap = new HashMap(); -// List sourceAlexaList = sourceAlexaRepository.findAll(); -// for (SourceAlexa sourceAlexa:sourceAlexaList) { -// if(TStringUtils.isNotEmpty(sourceAlexa.getSiteName())){ -// /** -// xinhuanet.com 新华网 -// xinhua.org 新华网 -// 只需要保留靠前的域名 -// */ -// if (scoreMap.containsKey(sourceAlexa.getSiteName()) && scoreMap.get(sourceAlexa.getSiteName()) < sourceAlexa.getFinalScore()) -// continue; -// else -// scoreMap.put(sourceAlexa.getSiteName(),sourceAlexa.getFinalScore()); -// -// -// } -// } -// return scoreMap; -// } -// -// /** -// *通过Host来匹配 -// * @return -// */ -// public Map findAllSourceAlexaByHost(){ -// Map scoreMap = new HashMap(); -// List sourceAlexaList = sourceAlexaRepository.findAll(); -// for (SourceAlexa sourceAlexa:sourceAlexaList) { -// if(TStringUtils.isNotEmpty(sourceAlexa.getHost())){ -// scoreMap.put(sourceAlexa.getHost(),sourceAlexa.getFinalScore()); -// } -// } -// return scoreMap; -// } -//} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericManager.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericManager.java deleted file mode 100644 index eb62ae0..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericManager.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.bfd.mf.common.service.base; - -import com.bfd.mf.common.web.entity.mysql.base.BaseEntityModel; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; - -import java.io.Serializable; -import java.util.List; - -public interface GenericManager { - - /** - * - * @param page - * @return - */ - public Page findAll(Pageable page); - - /** - * fetch all entities - * - * @return list for all entities - */ - public List findAll(); - - /** - * fetch specified entity according id; - * - * @param id - * entity id; - * @return entity - */ - public T findById(PK id); - - /** - * save specified entity; - * - * @param entity - * entity for saving - * @return saved domain entity - */ - public T save(T entity); - - /** - * - * @param entities - * @return - */ - public List save(Iterable entities); - - /** - * * delete entity according given id - * - * @param id - */ - public void delete(PK id); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericTreeManager.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericTreeManager.java deleted file mode 100644 index 33eb442..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/GenericTreeManager.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.bfd.mf.common.service.base; - -import com.bfd.mf.common.web.entity.mysql.base.BaseTreeEntityModel; - -import java.io.Serializable; -import java.util.List; - - -@SuppressWarnings("rawtypes") -public interface GenericTreeManager - extends GenericManager { - - /** - * 获取根节点实体集合 - * - * @return - */ - public List getRoot(); - - /** - * 获取制定id的直接孩子实体集合; - * - * @param id - * @return - */ - public List getChildren(PK id); - - /** - * 获取制定id的全部子孙实体集合; - * - * @param id - * @return - */ - public List getDescendants(PK id); - - /** - * 获取制定id的全部祖先实体集合; - * - * @param id - * @return - */ - public List getAncestors(PK id); - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericManagerImpl.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericManagerImpl.java deleted file mode 100644 index 83a86ad..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericManagerImpl.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.bfd.mf.common.service.base.impl; - -import com.bfd.mf.common.service.base.GenericManager; -import com.bfd.mf.common.web.entity.mysql.base.BaseEntityModel; -import com.bfd.mf.common.web.repository.mysql.base.GenericDao; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import org.springframework.transaction.annotation.Transactional; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; -import java.util.Optional; - -@Transactional -public class GenericManagerImpl - implements GenericManager { - - protected GenericDao dao; - - @Override - public Page findAll(Pageable page) { - Page result = this.dao.findAll(page); - return result; - } - - @Override - public T findById(PK id) { - Optional optional = this.dao.findById(id); - return optional.orElse(null); - } - - @Override - public T save(T entity) { - Date date = new Date(); - Long id = entity.getId(); - if (id == null) { - entity.setDateCreated(date); - entity.setDateModified(date); - } else { - entity.setDateModified(date); - } - return this.dao.saveAndFlush(entity); - } - - @Override - public List save(Iterable entities) { - return this.dao.saveAll(entities); - } - - @Override - public List findAll() { - return this.dao.findAll(); - } - - @Override - public void delete(PK id) { - this.dao.deleteById(id); - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericTreeManagerImpl.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericTreeManagerImpl.java deleted file mode 100644 index 2835a26..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/base/impl/GenericTreeManagerImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.bfd.mf.common.service.base.impl; - -import com.bfd.mf.common.service.base.GenericTreeManager; -import com.bfd.mf.common.web.entity.mysql.base.BaseTreeEntityModel; -import com.bfd.mf.common.web.repository.mysql.base.GenericTreeDao; -import org.springframework.transaction.annotation.Transactional; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -@Transactional -public class GenericTreeManagerImpl, PK extends Serializable> - extends GenericManagerImpl implements GenericTreeManager { - - protected GenericTreeDao treeDao; - - @Override - public List getRoot() { - return this.treeDao.getRoot(); - } - - @Override - public List getChildren(PK id) { - T entity = this.treeDao.getOne(id); - return entity.getChildren(); - } - - @Override - public List getDescendants(PK id) { - List descendants = new ArrayList(); - List children = this.getChildren(id); - if (children != null && children.size() > 0) { // 追加子孙 - descendants.addAll(children); - for (T t : children) { - @SuppressWarnings("unchecked") - List descendants2 = this.getDescendants((PK) t.getId()); - descendants.addAll(descendants2); - } - } -// if (children != null && children.size() > 0) { -// descendants.addAll(children); -// for (T t : children) { -// @SuppressWarnings("unchecked") -// List descendants2 = this.getDescendants((PK) t.getId()); -// descendants.addAll(descendants2); -// } -// } - return descendants; - } - - @Override - public List getAncestors(PK id) { - List ancestors = new ArrayList(); - T entity = this.treeDao.getOne(id); - T parent = entity.getParent(); - while (parent != null) { // 追述祖先 - ancestors.add(parent); - entity = parent; - parent = entity.getParent(); - } - return ancestors; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/SubjectClusterService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/SubjectClusterService.java deleted file mode 100644 index 3f3e957..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/SubjectClusterService.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.bfd.mf.common.service.cache; - -import com.bfd.mf.common.service.ISubjectClusterService; -import com.bfd.mf.common.service.common.CrudService; -import com.bfd.mf.common.service.es.ClusterService; -import com.bfd.mf.common.util.ESServerUtils; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.entity.mysql.cache.SubjectCluster; -import com.bfd.mf.common.web.repository.mysql.cache.SubjectClusterRepository; -import org.elasticsearch.action.admin.indices.delete.DeleteIndexResponse; -import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsRequest; -import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsResponse; -import org.elasticsearch.client.transport.TransportClient; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.math.BigInteger; - -@Service -public class SubjectClusterService extends CrudService implements ISubjectClusterService { - private static final long serialVersionUID = -9149895974179885940L; - private static Logger logger = LoggerFactory.getLogger(SubjectClusterService.class); - - @Autowired - private ClusterService clusterService; - @Autowired - private ESServerUtils esServerUtils; - @Autowired - public void setRepo(SubjectClusterRepository repo) { - this.repo = repo; - } - - @Override - public SubjectCluster copy(SubjectCluster from, SubjectCluster to) { - to = from; - return to; - } - - - @Override - public int createIndexBySubject(Long companyId, Long subjectId) { - return 0; - } - - /** - * dj-2020-01-10 商情前台 删除 话题检测的 话题 - */ - @Override - public boolean deleteIndexBySubject(Long companyId, Long subjectId) { - boolean flag = true; - try { - SubjectCluster subjectCluster = repo.findSubjectClusterBySubjectId(new BigInteger(subjectId.toString())); - if (null == subjectCluster) { - logger.info("[deleteIndexBySubject method] subject id not exit index,the subject is is {}", subjectId); - return true; - } - Cluster cluster = clusterService.get(subjectCluster.getClusterId()); - TransportClient client = esServerUtils.getClientByClusterId(cluster.getId()); - String indexName = cluster.getPrefixIndexPattern() + "_" + companyId + "_" + subjectId; - IndicesExistsRequest inExistsRequest = new IndicesExistsRequest(indexName); - IndicesExistsResponse inExistsResponse = client.admin().indices() - .exists(inExistsRequest).actionGet(); - if (inExistsResponse.isExists()) { - DeleteIndexResponse deleteResponse = client.admin().indices().prepareDelete(indexName).get(); - if (deleteResponse.isAcknowledged()) { - if (!client.admin().indices() - .exists(inExistsRequest).actionGet().isExists()) { - logger.info("[deleteIndexBySubject method] the subject cluster info is {} ", subjectCluster); - this.repo.deleteById(subjectCluster.getId()); - } - } - } - } catch (Exception e) { - flag = false; - logger.error("[deleteIndexBySubject method] the error is ", e); - } - return flag; - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/TopicQueryService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/TopicQueryService.java deleted file mode 100644 index a7ea26b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/cache/TopicQueryService.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.bfd.mf.common.service.cache; - -import com.bfd.mf.common.service.es.ESCommonService; -import com.bfd.mf.common.service.es.ParseSearchScopeService; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.elasticsearch.index.query.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.*; - -@Service -public class TopicQueryService { - private static Logger logger = LoggerFactory.getLogger(TopicQueryService.class); - private static final String SPLIT = "_"; - @Autowired - private ESCommonService esCommonService; - /** - * 根据 condition 中的查询条件组装 查询语句 - */ - public BoolQueryBuilder queryByConditions_v1(QueryRequest queryRequest) { - logger.info("[TopicQueryService] queryByConditions_v1 "); - BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); - - // channel - if(null != queryRequest.getSiteTypes() && !("").equals(queryRequest.getSiteTypes())) { - QueryBuilder channelQuery = buildChannelQueryBuilder(queryRequest); - boolQuery.filter(channelQuery); - } - - // searchArea - if(("").equals(queryRequest.getSearchArea())){ - logger.info("[TopicQueryService] queryByConditions_v1 查询全部地区"); - }else{ - String searchArea = getSearchArea(queryRequest.getSearchArea()); - boolQuery.must(QueryBuilders.termQuery(ESConstant.AREA,searchArea)); - } - - // cid - if(("").equals(queryRequest.getCid())){ - logger.info("[TopicQueryService] queryByConditions_v1 查询全部站点"); - }else{ - String cid = queryRequest.getCid(); - boolQuery.must(QueryBuilders.termQuery(ESConstant.EN_SOURCE,cid.toLowerCase())); - } - - //crawlDataFlag - if(("").equals(queryRequest.getCrawlDataFlag())){ - logger.info("[TopicQueryService] queryByConditions_v1 查询全部任务"); - }else{ - String crawlDataFlag = queryRequest.getCrawlDataFlag(); - boolQuery.must(QueryBuilders.termQuery(ESConstant.CRAWLDATAFLAG,crawlDataFlag)); - } - - // pubtime && crawlTime - if(null != queryRequest.getCrawlStartTime() && null != queryRequest.getCrawlEndTime()) { - long crawlStartTime = queryRequest.getCrawlStartTime(); - long crawlEndTime = queryRequest.getCrawlEndTime(); - boolQuery.must(QueryBuilders.rangeQuery("crawlTime").gte(crawlStartTime).lt(crawlEndTime)); - }else{ - long startTime = queryRequest.getStartTime(); - long endTime = queryRequest.getEndTime(); - boolQuery.must(QueryBuilders.rangeQuery("pubTime").gte(startTime).lt(endTime)); - } - return boolQuery; - } - - - private String getSearchArea(String searchArea) { - String area = "中国"; - if(searchArea.equals(0)){ - area = "美国"; - } - if(searchArea.equals(1)){ - area = "中国"; - } - return area; - } - - public QueryBuilder buildChannelQueryBuilder(QueryRequest queryRequest) { - String [] channel = queryRequest.getSiteTypes().split(","); - List channelList =getChannelList(channel); - if (TObjectUtils.isListEmpty(channelList)) - return null; - return esCommonService.buildStringQueryByField(ESConstant.CHANNEL, channelList); - } - - /** - * 根据 searchScope 中的查询条件组装查询语句 - */ - public BoolQueryBuilder buildSearchTextBuilder(Integer searchScope,String keyword) { - return ParseSearchScopeService.getSearchScopeQuery(searchScope,keyword); - } - - public BoolQueryBuilder buildSearchTextBuilder(Integer searchScope) { - return ParseSearchScopeService.getSearchScopeQuery(searchScope); - } - - public List getChannelList(String [] channel){ - List channels = new ArrayList<>(); - Map map = new HashMap<>(); - map.put("0","社交媒体"); - map.put("1","网络视频"); - map.put("2","网络资讯"); - map.put("3","搜索引擎"); - map.put("4","电商网站"); - map.put("5","垂直网站"); - map.put("6","电视广播"); - map.put("7","其他网站"); - for (String id:channel) { - channels.add(map.get(id)); - } - return channels; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/common/CrudService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/common/CrudService.java deleted file mode 100644 index f85ed03..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/common/CrudService.java +++ /dev/null @@ -1,183 +0,0 @@ -package com.bfd.mf.common.service.common; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.web.entity.mysql.Model; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.mysql.jdbc.StringUtils; -import org.springframework.data.repository.CrudRepository; - -import java.io.Serializable; -import java.util.*; - - -public abstract class CrudService> implements Serializable { - - public R repo; - - public abstract M copy(M from, M to); - - public Iterable getAll() { - return this.repo.findAll(); - } - - public M get(Long id) { - Optional optional = this.repo.findById(id); - return optional.orElse(null); - } - - -// public abstract void setRepo(R repo); -// -// public M save(M model) { -// return this.repo.save(model); -// } -// -// -// -// public M update(M model) { -// Optional optional = this.repo.findById(model.getId()); -// if(optional.isPresent()){ -// M updated = copy(model, optional.get()); -// return this.repo.save(updated); -// }else { -// return null; -// } -// } -// -// public boolean delete(Long id) { -// this.repo.deleteById(id); -// return true; -// } -// -// public JSONObject buildRootJson(String codeName, int initCapacity, boolean isOrder) { -// JSONObject root = new JSONObject(); -// JSONObject codeData = null; -// if (initCapacity > 0) { -// codeData = new JSONObject(initCapacity, isOrder); -// } else { -// codeData = new JSONObject(10, isOrder); -// } -// root.put(codeName, codeData); -// return root; -// } - - /* - * 判定一个字符串是否包含另一个字符串中的元素(用于mysql表中判定","号隔开的元素是否存在) - * - * @Param String 已存在的字符串(“,”号隔开) - * - * @Param String 新加入的字符串 - * - * @Return boolean 是否已存在 - */ -// public boolean strHasExisted(String currentStr, String deltaStr) { -// if (StringUtils.isNullOrEmpty(currentStr) || StringUtils.isNullOrEmpty(deltaStr)) { -// return false; -// } -// currentStr = currentStr.toLowerCase(); -// deltaStr = deltaStr.toLowerCase(); -// -// String[] nowParams = currentStr.split(","); -// if (null == nowParams || nowParams.length == 0) { -// return false; -// } -// HashSet set = new HashSet(); -// set.addAll(Arrays.asList(nowParams)); -// // -// String[] deltaParams = deltaStr.split(","); -// for (String delta : deltaParams) { -// if (set.contains(delta)) { -// return true; -// } -// } -// return false; -// } - - /* - * 判定一个字符串是否完全包含另一个字符串中的元素 - * - * @Param String 已存在的字符串(“,”号隔开) - * - * @Param String 新加入的字符串 - * - * @Return boolean 是否全部已存在 - */ -// public boolean strTotallyExisted(String currentStr, String deltaStr) { -// if (StringUtils.isNullOrEmpty(currentStr) || StringUtils.isNullOrEmpty(deltaStr)) { -// return false; -// } -// currentStr = currentStr.toLowerCase(); -// deltaStr = deltaStr.toLowerCase(); -// -// String[] nowParams = currentStr.split(","); -// if (null == nowParams || nowParams.length == 0) { -// return false; -// } -// HashSet set = new HashSet(); -// set.addAll(Arrays.asList(nowParams)); -// boolean falg = true; -// String[] deltaParams = deltaStr.split(","); -// for (String delta : deltaParams) { -// if (!set.contains(delta)) { -// return false; -// } -// } -// return falg; -// } - - /* - * 合并现有字符串和新加入字符串 - * - * @Param String 已存在的字符串(“,”号隔开) - * - * @Param String 新加入的字符串 - * - * @Return String 合并后的字符串 - */ -// public String[] mergeExistedAndDelta(String currentStr, String deltaStr) { -// if (StringUtils.isNullOrEmpty(currentStr) || StringUtils.isNullOrEmpty(deltaStr)) { -// return null; -// } -// currentStr = currentStr.toLowerCase(); -// deltaStr = deltaStr.toLowerCase(); -// -// String[] nowParams = currentStr.split(","); -// if (null == nowParams || nowParams.length == 0) { -// return deltaStr.split(","); -// } -// -// HashSet set = new HashSet(); -// set.addAll(Arrays.asList(nowParams)); -// String[] deltaParams = deltaStr.split(","); -// for (String delta : deltaParams) { -// if (!set.contains(delta)) { -// set.add(delta); -// } -// } -// String[] array = new String[set.size()]; -// return set.toArray(array); -// } -// -// public String excludeStr(String current, String delta) { -// if (!strHasExisted(current, delta)) { -// return null; -// } -// String[] strs = current.split(","); -// List lst = new ArrayList(); -// for (String st : strs) { -// if (!st.equalsIgnoreCase(delta)) { -// lst.add(st); -// } -// } -// StringBuilder sb = new StringBuilder(); -// // -// for (int i = 0; i < lst.size(); i++) { -// String s = lst.get(i); -// sb.append(s); -// if (i < lst.size() - 1) { -// sb.append(","); -// } -// } -// return sb.toString(); -// } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/emotion/EmotionEntityService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/emotion/EmotionEntityService.java deleted file mode 100644 index 5c619bc..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/emotion/EmotionEntityService.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.bfd.mf.common.service.emotion; - -import com.bfd.mf.common.service.es.ESCommonService; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.apache.commons.lang3.exception.ExceptionUtils; -import org.elasticsearch.index.query.QueryBuilder; -import org.elasticsearch.search.SearchHit; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.Map; - -@Service -public class EmotionEntityService { - private static Logger logger = LoggerFactory.getLogger(EmotionEntityService.class); - - @Autowired - private ESCommonService esCommonService; - - /** - * 构造情感主题,查询Query - */ - public QueryBuilder buildEmotionEntityBuilder(List emotionList) { - if (TObjectUtils.isListEmpty(emotionList)) { - return null; - } - return esCommonService.buildStringQueryByField(ESConstant.SYS_SENTIMENT, emotionList); - } -} - diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ClusterService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ClusterService.java deleted file mode 100644 index 5ee4554..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ClusterService.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.bfd.mf.common.service.es; - -import com.bfd.mf.common.service.common.CrudService; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.repository.mysql.cache.ClusterRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -@Service -public class ClusterService extends CrudService { - private static final long serialVersionUID = -8165362285610331623L; - @Autowired - public void setRepo(ClusterRepository repo) { - this.repo = repo; - } - - @Override - public Cluster copy(Cluster from, Cluster to) { - to = from; - return to; - } - - /** - * 只对应获取 mini && normal cluster - */ - public Cluster findClusterByType(int type) { - if (type == Cluster.CLUSTER_TYPE.mini_cluster_type || type == Cluster.CLUSTER_TYPE.normal_cluster_type) { - return repo.findClusterByType(type); - } - return null; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ESCommonService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ESCommonService.java deleted file mode 100644 index a1a4033..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ESCommonService.java +++ /dev/null @@ -1,240 +0,0 @@ -package com.bfd.mf.common.service.es; - -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.ESServerUtils; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import com.google.common.base.Splitter; -import org.elasticsearch.index.query.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.*; - -import static org.elasticsearch.index.query.QueryBuilders.rangeQuery; - -@Service -public class ESCommonService { - private final static Logger logger = LoggerFactory.getLogger(ESCommonService.class); - @Autowired - ESServerUtils esServerUtils; -// @Autowired -// FavourService favourService; - - public QueryBuilder buildKeyWordsQueryBuilder(String keyWords, String type) { - QueryBuilder keyWordsQuery = null; - if (!TStringUtils.isEmpty(keyWords)) { - if (ESConstant.SEARCH_SCOPE_TYPE_ALL.toLowerCase().equals(type.toLowerCase())) { - /**设置多值查询*/ - MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery(ESConstant.SEARCH_SCOPE_TYPE_TITLE, keyWords).slop(0); - MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery(ESConstant.SEARCH_SCOPE_TYPE_CONTENT, keyWords).slop(0); - MatchPhraseQueryBuilder forwardContentQuery = QueryBuilders.matchPhraseQuery(ESConstant.SEARCH_SCOPE_TYPE_FORWARD, keyWords).slop(0); - keyWordsQuery = QueryBuilders.boolQuery().should(titleQuery).should(contentQuery).should(forwardContentQuery); - } - if (ESConstant.SEARCH_SCOPE_TYPE_CONTENT.toLowerCase().equals(type.toLowerCase()) || ESConstant.SEARCH_SCOPE_TYPE_TITLE.toLowerCase().equals(type.toLowerCase())) { - keyWordsQuery = QueryBuilders.matchPhraseQuery(type, keyWords).slop(0); - } - if (ESConstant.SEARCH_SCOPE_TYPE_KEYWORDS.toLowerCase().equals(type.toLowerCase())) { - /**热度分析数据展示*/ - String wildcardStr = "*" + keyWords + "*"; - keyWordsQuery = QueryBuilders.wildcardQuery(ESConstant.HL_KEYWORDS, wildcardStr); - } - if (ESConstant.SOURCE.toLowerCase().equals(type.toLowerCase()) || ESConstant.SEARCH_SCOPE_TYPE_AUTHOR.toLowerCase().equals(type.toLowerCase())) { - /**媒体分析数据展示*/ - - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } - if (ESConstant.WEIBO_AUTHOR.toLowerCase().equals(type.toLowerCase())) { - /**微博用户分析数据展示 - * 1:针对的是微博的数据;所以把查询条件限制在weibo - * @FIXED:数据监控按照来源进行搜索;会把多余的信息搜索出来 - **/ - keyWordsQuery = QueryBuilders.boolQuery(). - should(QueryBuilders.boolQuery().filter(QueryBuilders.wildcardQuery(type, "*" + keyWords + "*")).filter(QueryBuilders.termQuery(ESConstant.DOC_TYPE, ESConstant.WEI_BO))); - //之前的“作者”字段,不再能搜出来微信公众号,只能按作者字段值搜索(V1.1.2版本需求说明) - //should(QueryBuilders.boolQuery().filter(QueryBuilders.wildcardQuery(ESConstant.SOURCE, "*" + keyWords + "*")).filter(QueryBuilders.termQuery(ESConstant.DOC_TYPE, ESConstant.WEI_XIN))) - } - if (ESConstant.WEIBO_USER_SEX.toLowerCase().equals(type.toLowerCase())) { - /**微博用户男女数据展示 - * - * 1:female - * 2:male - * 3:other/"" - */ - if (ESConstant.WEIBO_USER_SEX_FEMALE.toLowerCase().equals(keyWords.toLowerCase()) || ESConstant.WEIBO_USER_SEX_MALE.toLowerCase().equals(keyWords.toLowerCase())) { - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } else { - keyWordsQuery = QueryBuilders.boolQuery().mustNot(QueryBuilders.termsQuery(type, Arrays.asList(new String[]{ESConstant.WEIBO_USER_SEX_FEMALE, ESConstant.WEIBO_USER_SEX_MALE}))); - } - } - if (ESConstant.WEIBO_USER_VERIFIED.toLowerCase().equals(type.toLowerCase())) { - List verifiedList = Splitter.on(",").trimResults().splitToList(keyWords); - StringBuilder stringBuilder = buildBuilder(null, verifiedList); - // weibo 个人认证 - keyWordsQuery = QueryBuilders.simpleQueryStringQuery(stringBuilder.toString()) - .field(ESConstant.WEIBO_USER_VERIFIED).defaultOperator(Operator.OR); - - } - - if (ESConstant.WEIBO_USER_PROVINCE.toLowerCase().equals(type.toLowerCase())) { - /**province*/ - String wildcardStr = keyWords + "*"; - keyWordsQuery = QueryBuilders.wildcardQuery(ESConstant.WEIBO_USER_PROVINCE, wildcardStr); - } - if (ESConstant.URL.toLowerCase().equals(type.toLowerCase())) { - /**依据URL查询*/ - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } - if (ESConstant._ALL.toLowerCase().equals(type.toLowerCase())) { - /**依据_all查询*/ - keyWordsQuery = QueryBuilders.queryStringQuery(keyWords).defaultField(ESConstant._ALL); - } - if (ESConstant.DOC_ID.toLowerCase().equals(type.toLowerCase())) { - /**依据_all查询*/ - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } - - if (ESConstant.TITLE_SIMHASH.toLowerCase().equals(type.toLowerCase())) { - /**依据_all查询*/ - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } - - if (ESConstant.DOC_TYPE.toLowerCase().equals(type.toLowerCase())) { - keyWordsQuery = QueryBuilders.termQuery(type, keyWords); - } - - //微信公众号 - if (ESConstant.SEARCH_SCOPE_WECHAT_SUBSCRIPTION.toLowerCase().equals(type.toLowerCase())) { - keyWordsQuery = QueryBuilders.wildcardQuery(ESConstant.SOURCE, "*" + keyWords + "*"); - } - } - return keyWordsQuery; - } - - public QueryBuilder buildRangeQueryBuilder(String field, Object startVal, Object endVal, Boolean isIncludeLower, Boolean isIncludeUpper) { - return rangeQuery(field) - .from(startVal) - .to(endVal) - .includeLower(isIncludeLower) - .includeUpper(isIncludeUpper); - } - - public QueryBuilder buildStringQueryByField(String field, List lists) { - - if (null == field || null == lists || lists.size() == 0) { - return QueryBuilders.simpleQueryStringQuery(ESConstant.OPERATOR_ALL); - } - int size = lists.size(); - if (ESConstant.DOC_TYPE.equals(field)) { - if (ESConstant.TYPE_LIST.size() == size) { - return QueryBuilders.simpleQueryStringQuery(ESConstant.OPERATOR_SINGLE_ALL).field(ESConstant.DOC_TYPE).defaultOperator(Operator.OR); - } else { - StringBuilder strBuilder = buildBuilder(field, lists); - return QueryBuilders.simpleQueryStringQuery( - strBuilder.toString()) - .field(ESConstant.DOC_TYPE) - .defaultOperator(Operator.OR); - } - } else if (ESConstant.SYS_SENTIMENT.equals(field) - || (ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE).equals(field) - || (ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE).equals(field)) { - BoolQueryBuilder emotionQuery = QueryBuilders.boolQuery(); - for (String emotion : lists) { - switch (emotion) { - case ESConstant.COMMON_TAG: - emotionQuery.should(buildRangeQueryBuilder(field, ESConstant.SENTIMENTAL_MID, ESConstant.SENTIMENTAL_MAX, true, true)); - //emotionQuery.should(QueryBuilders.matchPhraseQuery(ESConstant.SYS_SENTIMENT, ESConstant.COMMON_TAG_VALUE).slop(0).boost(1)); - break; - case ESConstant.NEGATIVE_TAG: - emotionQuery.should(buildRangeQueryBuilder(field, ESConstant.SENTIMENTAL_MIN, ESConstant.SENTIMENTAL_THRESHOLD, true, true)); - //emotionQuery.should(QueryBuilders.matchPhraseQuery(ESConstant.SYS_SENTIMENT, ESConstant.NEGATIVE_TAG_VALUE).slop(0).boost(1)); - break; - case ESConstant.NEUTER_TAG: - emotionQuery.should(buildRangeQueryBuilder(field, ESConstant.SENTIMENTAL_THRESHOLD, ESConstant.SENTIMENTAL_MID, false, false)); - //emotionQuery.should(QueryBuilders.matchPhraseQuery(ESConstant.SYS_SENTIMENT, ESConstant.NEUTER_TAG_VALUE).slop(0).boost(1)); - break; - default: - break; - } - } - return emotionQuery; - - } else if (ESConstant.TITLE_SIMHASH.equals(field)) { - return QueryBuilders.termsQuery(ESConstant.TITLE_SIMHASH, lists); - } else if (ESConstant.DOC_ID.equals(field)) { - return QueryBuilders.termsQuery(ESConstant.DOC_ID, lists); - } else if (ESConstant.DATA_ID.equals(field)) { - return QueryBuilders.termsQuery(ESConstant.DATA_ID, lists); - } else if (ESConstant.CONTENT_TAG.equals(field)) { - return TObjectUtils.isListEmpty(lists) ? null : QueryBuilders.simpleQueryStringQuery(buildContentTagOrOtherQueryString(lists)).field(field).defaultOperator(Operator.OR); - } else { - StringBuilder strBuilder = buildBuilder(field, lists); - return QueryBuilders.simpleQueryStringQuery(strBuilder.toString()).field(field).defaultOperator(Operator.OR); - } - } - - public StringBuilder buildBuilder(String field, List lists) { - int size = lists.size(); - StringBuilder strBuilder = new StringBuilder(); - for (int i = 0; i < size; i++) { - String str = lists.get(i); - if (i == (size - 1)) { - strBuilder.append(str); - } else { - if (ESConstant.ZIXUN.equals(str)) { - strBuilder.append(ESConstant.NEWS).append(ESConstant.OPERATOR_SPACE); - strBuilder.append(ESConstant.APP).append(ESConstant.OPERATOR_SPACE); - } - strBuilder.append(str).append(ESConstant.OPERATOR_SPACE); - } - } - return strBuilder; - } - - - private String buildContentTagOrOtherQueryString(List lists) { - StringBuilder strBuilder = new StringBuilder(); - for (int i = 0; i < lists.size(); i++) { - String str = lists.get(i); - if (i == (lists.size() - 1)) { - strBuilder.append(str); - } else { - strBuilder.append(str).append(ESConstant.OPERATOR_SPACE); - } - } - return strBuilder.toString(); - } - -// public List miniAndPrimaryClusterType() { -// List typeList = new ArrayList<>(); -// typeList.add(Cluster.CLUSTER_TYPE.mini_cluster_type); -// typeList.add(Cluster.CLUSTER_TYPE.normal_cluster_type); -// return typeList; -// } - -// public QueryBuilder buildFavourQueryBuilder(Long bookMarkId, AbsRequest absRequest) { -// QueryBuilder bookMarkQuery = null; -// List docIdLists = new ArrayList<>(); -// List favourList = null; -//// if (null == bookMarkId) { -//// bookMarkQuery = null; -//// } else if (bookMarkId == -1) { -//// favourList = favourService.getAllFavDoc(absRequest); -//// -//// } else { -//// List lists = new ArrayList<>(); -//// lists.add(bookMarkId); -//// favourList = favourService.getFavourDocList(absRequest, lists); -//// } -// if (null != favourList && favourList.size() > 0) { -// for (FavourDoc favourDoc : favourList) { -// docIdLists.add(favourDoc.getDocId()); -// } -// bookMarkQuery = buildStringQueryByField(ESConstant.DOC_ID, docIdLists); -// } -// return bookMarkQuery; -// } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/MonitorMainSourceService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/MonitorMainSourceService.java deleted file mode 100644 index bc68cda..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/MonitorMainSourceService.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.bfd.mf.common.service.es; - -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.web.entity.mysql.report.MainSourceEntity; -import com.bfd.mf.common.web.repository.mysql.UserRepository; -import com.bfd.mf.common.web.repository.mysql.report.MainSourceRepository; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.*; - -@Service -public class MonitorMainSourceService { - private static Logger logger = LoggerFactory.getLogger(MonitorMainSourceService.class); - - @Autowired - private MainSourceRepository mainSourceRepository; - @Autowired - private UserRepository userRepository; - - - public Map> getMainSourceMap(String token) { - Map> mainSourceMap = new HashMap<>(); - Long companyId = userRepository.findByTokenAndDel(token, false).getCompanyId(); - if (companyId == null) { - return mainSourceMap; - } - - List mainSourceList = mainSourceRepository.findByCompanyIdAndStatus(companyId, 1); - for (MainSourceEntity mainSourceEntity : mainSourceList) { - String channel = mainSourceEntity.getDocTypeEn(); - Set sourceOfChannel; - if (mainSourceMap.containsKey(channel)) { - sourceOfChannel = mainSourceMap.get(channel); - } else { - sourceOfChannel = new HashSet<>(); - } - sourceOfChannel.add(mainSourceEntity.getSource()); - mainSourceMap.put(channel, sourceOfChannel); - } - return mainSourceMap; - } - - public Float getAlexaScore(String docType, Map> mainSourceMap, String source, Float alexaTmpScore) { - Float alexaScore = ESConstant.ALEXA_DEFAULT_SCORE; - if (null != docType && (ESConstant.NEWS.equals(docType) || ESConstant.MEDIA.equals(docType) || ESConstant - .WEI_XIN.equals(docType))) { - - alexaScore = (null == alexaTmpScore) ? alexaScore : alexaTmpScore; - } - // 用户设置的主来源列表为首位 - if (mainSourceMap.containsKey(docType) && mainSourceMap.get(docType).contains(source)) { - alexaScore = (1 - 1.0f / (1 + alexaScore)); - } - return alexaScore; - } - - -// public void sortByMainScoreBase(List timeSeries, String sortFlag, DataQueryRequest dataQueryRequest) { -// try { -// Map siteMap = AlexaSingleUtils.getInstance(sourceAlexaManager).getAlexaScoreBySiteName(); -//// Map> mainSourceMap = getMainSourceMap(dataQueryRequest.getToken()); -// if (sortFlag.equals(ESConstant.SCORE_DESC_SORT_FLAG)) { -// for(ESMonitorBaseEntity esMonitorBaseEntity : timeSeries){ -// Float sore = esMonitorBaseEntity.getScore(); -//// Float alexaScore = getAlexaScore(esMonitorBaseEntity.getDocType(),mainSourceMap,esMonitorBaseEntity.getSource(),siteMap.get -//// (esMonitorBaseEntity.getSource())); -// Float emotionScore = esMonitorBaseEntity.getSysSentimentTag().equals(ESConstant.NEGATIVE_TAG) ? 0.5f * esMonitorBaseEntity.getSimilarityNumber() : 0f; -// Float docNumAndEmotionSore = esMonitorBaseEntity.getSimilarityNumber() + emotionScore; -//// Float resultScore = 5 * sore / (1 + sore) + 3 * (1 - alexaScore / (1 + alexaScore)) + docNumAndEmotionSore / (1 + docNumAndEmotionSore); -//// esMonitorBaseEntity.setScore(resultScore); -// } -// } -// Collections.sort(timeSeries); -// } catch (Exception e) { -// logger.error("[sortByMainScore] 重要度排序出现异常:{}", e); -// } -// } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java deleted file mode 100644 index d25acf6..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.bfd.mf.common.service.es; - -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.nlp.common.util.string.TStringUtils; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.MatchPhraseQueryBuilder; -import org.elasticsearch.index.query.QueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -public class ParseSearchScopeService { - - /** - * 二次检索 条件组装 - */ - public static BoolQueryBuilder getSearchScopeQuery(Integer searchScope,String keyword) { - BoolQueryBuilder boolQueryBuilder = null; - QueryBuilder queryBuilder = null; - QueryRequest queryRequest = new QueryRequest(); - List searchList = queryRequest.getSearchScopeValue(searchScope); - System.out.println(searchList.toString()); - if (!TStringUtils.isEmpty(keyword)) { - boolQueryBuilder = QueryBuilders.boolQuery().minimumShouldMatch(1); - if(searchList.size() ==1){ - queryBuilder = QueryBuilders.matchPhraseQuery(searchList.get(0), keyword).slop(0); - }else{ - if(searchList.toString().contains("content") && searchList.toString().contains("title") ){ - MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery("title", keyword).slop(0); - MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); - queryBuilder = QueryBuilders.boolQuery().should(titleQuery).should(contentQuery); - } - if(searchList.toString().contains("content") && searchList.toString().contains("author")){ - MatchPhraseQueryBuilder authorQuery = QueryBuilders.matchPhraseQuery("author", keyword).slop(0); - MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); - queryBuilder = QueryBuilders.boolQuery().should(authorQuery).should(contentQuery); - } - if(searchList.toString().contains("title") && searchList.toString().contains("author")){ - MatchPhraseQueryBuilder authorQuery = QueryBuilders.matchPhraseQuery("author", keyword).slop(0); - MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery("title", keyword).slop(0); - queryBuilder = QueryBuilders.boolQuery().should(authorQuery).should(titleQuery); - } - } - boolQueryBuilder.should(queryBuilder); - } - return boolQueryBuilder; - } - - -// if (!TStringUtils.isEmpty(keyword)) { // 如果查询的关键词为空的话,就表示不做二次查询 -// boolQueryBuilder = QueryBuilders.boolQuery().minimumShouldMatch(1); -// if(searchScope == 0){ // 0 content 1 title 2 author 3 con+tit 4con+aut 5con+com -// queryBuilder = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); -// } -// if(searchScope == 1){ -// queryBuilder = QueryBuilders.matchPhraseQuery("title", keyword).slop(0); -// } -// if(searchScope == 2){ -// queryBuilder = QueryBuilders.matchPhraseQuery("author", keyword).slop(0); -// } -// if(searchScope == 3){ -// MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery("title", keyword).slop(0); -// MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); -// queryBuilder = QueryBuilders.boolQuery().should(titleQuery).should(contentQuery); -// } -// if(searchScope == 4){ -// MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery("author", keyword).slop(0); -// MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); -// queryBuilder = QueryBuilders.boolQuery().should(titleQuery).should(contentQuery); -// } -// if(searchScope == 5){ -// MatchPhraseQueryBuilder titleQuery = QueryBuilders.matchPhraseQuery("title", keyword).slop(0); -// MatchPhraseQueryBuilder contentQuery = QueryBuilders.matchPhraseQuery("content", keyword).slop(0); -// queryBuilder = QueryBuilders.termQuery("primary","0"); -// queryBuilder = QueryBuilders.boolQuery().should(titleQuery).should(contentQuery); -// } -// } - - - - public static BoolQueryBuilder getSearchScopeQuery(Integer searchScope) { - BoolQueryBuilder searchScopeQuery = null; - System.out.println("得先到这个方法吧?????"); - if(searchScope < 4){ - searchScopeQuery = QueryBuilders.boolQuery().must(QueryBuilders.termQuery("primary", 0)); - }else { - searchScopeQuery = QueryBuilders.boolQuery().must(QueryBuilders.termQuery("primary", 1)); - } - return searchScopeQuery; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/text/TextService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/text/TextService.java deleted file mode 100644 index ebc952c..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/service/text/TextService.java +++ /dev/null @@ -1,266 +0,0 @@ -package com.bfd.mf.common.service.text; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import com.bfd.mf.config.BFDApiConfig; -import net.logstash.logback.encoder.org.apache.commons.lang.exception.ExceptionUtils; -import org.apache.commons.lang3.StringUtils; -import org.apache.http.HeaderElement; -import org.apache.http.HeaderElementIterator; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.config.RequestConfig; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.conn.ConnectionKeepAliveStrategy; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; -import org.apache.http.message.BasicHeaderElementIterator; -import org.apache.http.protocol.HTTP; -import org.apache.http.protocol.HttpContext; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -@Service -public class TextService { - - private static Logger logger = LoggerFactory.getLogger(TextService.class); - - @Autowired - private BFDApiConfig bfdApiConfig; - - public Map CloudPost(Map map, Integer type) { - CloseableHttpClient httpclient = getClientFromPool(); - HttpPost httpPost = new HttpPost(bfdApiConfig.getTextPostUrl()); - String result = null; - try { - JSONObject params = new JSONObject(); - params.put("map", JSONObject.toJSONString(map)); - params.put("type", type); - StringEntity strEntity = new StringEntity(JSONObject.toJSONString(map), "utf-8"); - strEntity.setContentType("application/json"); - httpPost.setEntity(strEntity); - long start = System.currentTimeMillis(); - HttpResponse response = httpclient.execute(httpPost); - System.err.println(Thread.currentThread().getName() + " single data used Time: " + (System.currentTimeMillis() - start)); - if (response != null) { - HttpEntity resEntity = response.getEntity(); - if (resEntity != null) { - result = EntityUtils.toString(resEntity, "utf-8"); - EntityUtils.consume(resEntity); - map = (Map) JSONObject.parse(result); - } - } - } catch (IOException e) { - logger.error("Http Post For Spam Tag : " + e); - } - return map; - } - - public List emotionPost(List list) throws Exception { - CloseableHttpClient httpclient = getClientFromPool(); - HttpPost httpPost = new HttpPost(bfdApiConfig.getEmotionPostUrl()); - String result; - try { - StringEntity strEntity = new StringEntity(JSONObject.toJSONString(list), "utf-8"); - // System.out.println(JSONObject.toJSONString(list)); - strEntity.setContentType("application/json"); - httpPost.setEntity(strEntity); - long start = System.currentTimeMillis(); - HttpResponse response = httpclient.execute(httpPost); - System.err.println(Thread.currentThread().getName() + " single data used Time: " + (System.currentTimeMillis() - start)); - if (response != null) { - HttpEntity resEntity = response.getEntity(); - if (resEntity != null) { - result = EntityUtils.toString(resEntity, "utf-8"); - EntityUtils.consume(resEntity); - list = (List) JSONObject.parse(result); - } - } - } catch (IOException e) { - logger.error("Http Post For Spam Tag : " + e); - throw new Exception("Http Post For Spam"+ExceptionUtils.getFullStackTrace(e)); - } - return list; - } - - public Map post(Map map, Integer type) { - CloseableHttpClient httpclient = getClientFromPool(); - String url = ""; - if (type == 2) { - url = bfdApiConfig.getTextPostUrl(); - } else { - url = bfdApiConfig.getWordCloudPostUrl(); - } - System.out.println("???"+ url); - HttpPost httpPost = new HttpPost(url); - String result = null; - try { - StringEntity strEntity = new StringEntity(JSONObject.toJSONString(map), "utf-8"); - strEntity.setContentType("application/json"); - httpPost.setEntity(strEntity); - long start = System.currentTimeMillis(); - HttpResponse response = httpclient.execute(httpPost); - System.err.println(Thread.currentThread().getName() + " single data used Time: " + (System.currentTimeMillis() - start)); - if (response != null) { - HttpEntity resEntity = response.getEntity(); - if (resEntity != null) { - result = EntityUtils.toString(resEntity, "utf-8"); - EntityUtils.consume(resEntity); - map = (Map) JSONObject.parse(result); - map = replace(map); - } - } - } catch (IOException e) { - logger.error("Http Post For Spam Tag : " + e); - } - return map; - } - - private Map replace(Map map) { - Map resultMap = new HashMap(); - String E1 = "[`~!@$%^&*()+=|{}':;',.<>/?~!@¥%……&*()——+|{}【】‘;:”“’。,、?_]"; - String E2 = "[a-zA-Z]";// 英文 - String E3 = "[0-9]";// 数字 - String values = ""; - for (Map.Entry entry : map.entrySet()) { - values = entry.getKey().replaceAll(E1, ""); - values = values.replace(E2, ""); - values = values.replace(E3, ""); - if(StringUtils.isNotEmpty(values)) { - resultMap.put(values, entry.getValue()); - } - } - return resultMap; - } - - public CloseableHttpClient getClientFromPool() { - return HttpClients.custom() - .setConnectionManager(new PoolingHttpClientConnectionManager()) - .setKeepAliveStrategy(defaultStrategy()) - .setDefaultRequestConfig(RequestConfig.custom().setStaleConnectionCheckEnabled(true).build()) - .build(); - } - - private ConnectionKeepAliveStrategy defaultStrategy() { - return new ConnectionKeepAliveStrategy() { - @Override - public long getKeepAliveDuration(HttpResponse response, HttpContext context) { - HeaderElementIterator it = new BasicHeaderElementIterator - (response.headerIterator(HTTP.CONN_KEEP_ALIVE)); - while (it.hasNext()) { - HeaderElement he = it.nextElement(); - String param = he.getName(); - String value = he.getValue(); - if (value != null && param.equalsIgnoreCase - ("timeout")) { - return Long.parseLong(value) * 1000; - } - } - return 60 * 1000;//如果没有约定,则默认定义时长为60s - } - }; - } - - /** - * 获取最新情感值 - */ - public void resetDataEmotion(List monitorList) { - if (monitorList != null && monitorList.size() > 0) { - List objectList = new ArrayList<>(); - JSONObject jsonObject; - for (ESMonitorEntity esMonitorEntity : monitorList) { - jsonObject = new JSONObject(); - jsonObject.put(ESConstant.TITLE, esMonitorEntity.getTitle()); - jsonObject.put(ESConstant.SUMMARY, esMonitorEntity.getContentAbstract()); - jsonObject.put(ESConstant.SENTIMENT, resetSentiment(esMonitorEntity.getSysSentimentTag())); - objectList.add(jsonObject); - } - try { - objectList = emotionPost(objectList); - } catch (Exception e) { - e.printStackTrace(); - } - resetDataEmotion(monitorList, objectList); - } - } - - /** - * 重置情感值 - */ - public void resetDataEmotion(List monitorList, List jsonObjectList) { - JSONObject jsonObject; - ESMonitorEntity monitorEntity; - for (int i = 0; i < monitorList.size(); i++) { - jsonObject = jsonObjectList.get(i); - monitorEntity = monitorList.get(i); - logger.error("docId sentiment source :{}", monitorEntity.getSysSentimentTag()); - monitorEntity.setSysSentimentTag(resetSentiment(jsonObject.getInteger(ESConstant.SENTIMENT))); - logger.error("docId sentiment target {}", monitorEntity.getSysSentimentTag()); - } - } - - /** - * 情感值与数字之间的转化 - */ - public Integer resetSentiment(String sentiment) { - Integer values = 1; - if (ESConstant.NEGATIVE_TAG.equals(sentiment)) { - values = 3; - } - if (ESConstant.COMMON_TAG.equals(sentiment)) { - values = 1; - } - if (ESConstant.NEUTER_TAG.equals(sentiment)) { - values = 2; - } - return values; - } - - /** - * 数字与情感值的转化 - */ - private String resetSentiment(Integer sentiment) { - String values = ESConstant.COMMON_TAG; - if (sentiment == 1) { - values = ESConstant.COMMON_TAG; - } - if (sentiment == 2) { - values = ESConstant.NEUTER_TAG; - } - if (sentiment == 3) { - values = ESConstant.NEGATIVE_TAG; - } - return values; - } - - /** - * 计算每个关键词出现的文章数 - */ - private void getKeyWordNewsCount(List list, Map map) { - for (String s : list) { - for (Map.Entry entry : map.entrySet()) { - if (map.containsKey(s)) { - map.put(entry.getKey(), entry.getValue() + 1); - } - } - } - } - - private void initKeyWordMap(Map map) { - for (Map.Entry entry : map.entrySet()) { - map.put(entry.getKey(), 0); - } - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/thread/SubjectQueryDataService.java b/cl_search_api/src/main/java/com/bfd/mf/common/thread/SubjectQueryDataService.java deleted file mode 100644 index 877c4ff..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/thread/SubjectQueryDataService.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.bfd.mf.common.thread; - - -import com.bfd.mf.common.service.cache.TopicQueryService; -import com.bfd.mf.common.service.es.ESCommonService; -import com.bfd.mf.common.util.ESServerUtils; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.thread.SubjectDataQueryThread; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.nlp.common.util.string.TStringUtils; -import org.elasticsearch.action.search.SearchRequestBuilder; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.action.search.SearchType; -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.QueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; - - -/** - * 依据时间多线程(请求ES的时间区间范围不可以太长) - */ -@Service -public class SubjectQueryDataService { - private Logger logger = LoggerFactory.getLogger(SubjectQueryDataService.class); - - private static final Long ONE_DAY = 60 * 60 * 1000L * 24; - private static final Long clusterId = 3L; - @Autowired - private TopicQueryService topicQueryService; - @Autowired - private ESServerUtils esServerUtils; - @Autowired - private ESCommonService esCommonService; - - - /** - * 专题下数据列表查询 - */ - public List fetchResponseDataFromCache(QueryRequest queryRequest,Long clusterId , - List currentIndexList, - String[] fieldList) { - logger.info("[SubjectQueryDataService ] fetchResponseDataFromCache : 数据列表查询 "); - - // 存储结果x - List searchResponseList = Collections.synchronizedList(new ArrayList<>()); - // 可以分配线程数量 - int availableProcessors = Runtime.getRuntime().availableProcessors(); - ExecutorService executorService = Executors.newFixedThreadPool(availableProcessors); - TransportClient transportClient = esServerUtils.getClientByClusterId(clusterId); - final CountDownLatch latch = new CountDownLatch(1); - - BoolQueryBuilder boolQueryBuilder = topicQueryService.queryByConditions_v1(queryRequest); - - // 如果要根据ID 查询数据 - if(null != queryRequest.getDocIds() && !("").equals(queryRequest.getDocIds())) { - String docIds = queryRequest.getDocIds(); - List dataIdList = new ArrayList<>(); - if(docIds.contains(",")){ - String ids [] = docIds.split(","); - for (String id:ids) { - dataIdList.add(id); - } - }else{ - dataIdList.add(docIds); - } - QueryBuilder queryBuilder = esCommonService.buildStringQueryByField(ESConstant.DOC_ID, dataIdList); - boolQueryBuilder = QueryBuilders.boolQuery().filter(queryBuilder); - } - - // 关键词不为空就添加关键词查询语句 = 0 content 1 title 2 author 3 con+tit 4con+aut 5con+com - Integer searchScope = queryRequest.getSearchScope(); - String keyword = queryRequest.getKeyword(); - BoolQueryBuilder searchTextBuilder = topicQueryService.buildSearchTextBuilder(searchScope); - boolQueryBuilder.filter(searchTextBuilder); - if (TStringUtils.isNotEmpty(keyword)) { - searchTextBuilder = topicQueryService.buildSearchTextBuilder(searchScope,keyword); - } - boolQueryBuilder.filter(searchTextBuilder); - - // 组装完整查询语句 - SearchRequestBuilder searchCountQuery = esServerUtils - .buildSearchRequestBuilder(clusterId, currentIndexList) - .setQuery(boolQueryBuilder) - .setFetchSource(fieldList, null) - .setSearchType(SearchType.DEFAULT); - - System.out.println(searchCountQuery); - - executorService.submit(new SubjectDataQueryThread( - searchResponseList, - searchCountQuery, - transportClient, - latch)); - - try { - latch.await(20L, TimeUnit.SECONDS); - executorService.shutdown(); - } catch (InterruptedException e) { - e.printStackTrace(); - } - return searchResponseList; - } - - - /** - 根据时间 组装获取 索引列表 时间索引ES 全部数据 - */ - public List getIndexListByTimeRange(Cluster cluster, Long startTime,Long endTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - Set set = new HashSet<>(); - for (Long time = startTime; time <= endTime; time += (20 * 60 * 60 * 1000L)) { - set.add(cluster.getPrefixIndexPattern() + "_" + format.format(time)); - } - set.add(cluster.getPrefixIndexPattern() + "_" + format.format(endTime)); - return new ArrayList<>(set); - } - - /** - * 根据 subjectId 列表,组装获取专题索引 专题索引ES 专题数据 - */ - public List getIndexBySubjectIds(Cluster cluster, String subjectIds) { - Set set = new HashSet<>(); - if(subjectIds.contains(",")){ - for(String subjectId :subjectIds.split(",")){ - set.add(cluster.getPrefixIndexPattern() + "_"+subjectId); - } - }else { - String subjectId = subjectIds; - set.add(cluster.getPrefixIndexPattern() + "_"+subjectId); - } - return new ArrayList<>(set); - } - - -// -// public List fetchResponseCommentsFromCache(CommentQueryRequest commentQueryRequest, -// List currentIndexList, -// String[] fieldList) { -// logger.info("[ SubjectQueryDataService ] fetchResponseCommentsFromCache : 某个详情的评论列表查询 "); -// -// // 存储结果x -// List searchResponseList = Collections.synchronizedList(new ArrayList<>()); -// // 可以分配线程数量 -// int availableProcessors = Runtime.getRuntime().availableProcessors(); -// ExecutorService executorService = Executors.newFixedThreadPool(availableProcessors); -// long clusterId = 3L; -// TransportClient transportClient = esServerUtils.getClientByClusterId(clusterId); -// final CountDownLatch latch = new CountDownLatch(1); -// -// BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); -// boolQueryBuilder.must(QueryBuilders.termQuery(ESConstant.DOC_ID,commentQueryRequest.getDocId())); -// boolQueryBuilder.must(QueryBuilders.termQuery(ESConstant.PRIMARY,0)); -// -// -// // 组装完整查询语句 -// SearchRequestBuilder searchCountQuery = esServerUtils -// .buildSearchRequestBuilder(clusterId, currentIndexList) -// .setQuery(boolQueryBuilder) -// .setFetchSource(fieldList, null) -// .setSearchType(SearchType.DEFAULT); -// -// System.out.println(searchCountQuery); -// executorService.submit(new SubjectDataQueryThread( -// searchResponseList, -// searchCountQuery, -// transportClient, -// latch)); -// -// try { -// latch.await(20L, TimeUnit.SECONDS); -// executorService.shutdown(); -// } catch (InterruptedException e) { -// e.printStackTrace(); -// } -// return searchResponseList; -// } - - - -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESConstant.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/ESConstant.java deleted file mode 100644 index 4545de3..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESConstant.java +++ /dev/null @@ -1,1059 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.util; - -import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class ESConstant { - -// public static final String COMPANY_ID = "companyId"; -// public static final String INDUSTRY_ID = "industryId"; - - public static final String SPAM_TAG = "spamTag"; - - public static final String MEDIA_AREA_KEY = "dict"; - - public static final float BOOST_WEIGHT = 10f; - // 相似查询返回的最大数据量 - public static final Integer MAX_RESULT_WINDOWS_SIZE = 10000; - public static final Integer MAX_SCROLL_SIZE = 5000; - public static final Integer MAX_SCORLL_SIZE_CL = 2000; - public static final Long MAX_SEARCH_TIME_MINUTES = 2L; - public static final String SUBJECT_CLUSTER_INDEX_PREFIX = "mf_subject"; - public static final String ES_KEY = "es"; - public static final String ES_NORMAL_KEY = "es_normal"; - public static final String CACHE_KEY = "cache"; - public static final int BULK_SIZE = 100; - public static final String INDEX_TYPE = "docs"; - public static final String bigramPostfix = ".shingles"; - public static final String bigramKey = "bigram"; - public static final String filterTypeKey = "filter_type"; - public static final String queryTypeKey = "query_type"; - public static final Double aggOffset = 16 * 6 - * 60 * 1000d; - public static final Double ONE_DAY = 24 * 60 * 60 * 1000d; - public static final Double ONE_HOUR = 60 * 60 * 1000d; - - public static final String SENTIMENT = "sentiment"; - - public static final String SUMMARY = "summary"; - - /** - * * - * - * @FIXED 2017.11.13 increase the runtime,from 3 min to 6 min - */ - public static final long THREAD_TIME = 15 * 60 * 1000L; - - public static String DESC = "desc"; - - public static String ASC = "asc"; - - /** - * pubTime时间由远及近 - */ - public static String DEFUALT_SORT = "createdTimeDesc"; - - /** - * pubTime时间由远及近 - */ - public static String PUBTIME_ASC_SORT_FLAG = "timeAsc"; - - - /** - * pubTime时间由近及远 - */ - public static String PUBTIME_DESC_SORT_FLAG = "timeDesc"; - - /** - * createTime时间由近及远 - */ - public static String CREATE_TIME_DESC_SORT_FLAG = "createdTimeDesc"; - - /** - * createTime时间由远及近 - */ - public static String CREATE_TIME_ASC_SORT_FLAG = "createdTimeAsc"; - - /** - * 重要度排序 - */ - public static String SCORE_DESC_SORT_FLAG = "scoreDesc"; - - /** - * Alexa - */ - public static String ALEXA_ASC_SORT_FLAG = "alexaAsc"; - /*** - * - */ - public static Float ALEXA_DEFAULT_SCORE = 1000000.00F; - /** - * 转载量排序 - */ - public static String FOLDER_NUMBER_DESC_SORT_FLAG = "folderNumberDescSortFlag"; - /** - * 综合排序:1:转载量排序;2:转载量一样按照得分排序;3:随后按照pubTime时间倒序 - */ - public static String REPORT_SORT_FLAG = "reportSortFlag"; - - public static String SCORE = "_score"; - public static String SCORE_FROM_SOURCE = "score"; - - - /** - * 关键词前缀 - */ - public static final String TAG_START = ""; - /** - * 关键词后缀 - */ - public static final String TAG_END = ""; - - /** - * 标题关键词分隔符 - */ - public static final String TITLE_KEYWORDS_SPLIT_SYSBOL = ","; - /** - * 相关度等级词分隔符 - */ - public static final String RELATEDWORDS_HIGH = "high"; - public static final String RELATEDWORDS_MEDIUM = "medium"; - public static final String RELATEDWORDS_LOW = "low"; - /** - * 相关度分级 - */ - public static final float RELATEDRATE_MIN = 0.00F; - public static final float RELATEDRATE_MAX = 1.00F; - public static final int RELATEDRATE_MIN_SEARCH_NUMBER = 10; - /** - * 排除关键词分隔符 - */ - public static final String EXCLUDE_KEYWORDS_SPLIT_SYSBOL = ","; - public static final String EXCLUDE_KEYWORDS_SPLIT_CN_SYSBOL = ","; - - - /** - * 最小匹配度 - */ - public static final Integer MINI_NUMBER_SHOULD_MATCH = 1; - /** - * 最大摘要长度 - */ - public static final Integer MAX_FRAGMENT_SIZE = 10000; - /** - * 数据监控页面摘要长度 - */ - public static final Integer MONITOR_FRAGMENT_SIZE = 110; - // 报告摘要长度 - public static final Integer Report_FRAGMENT_SIZE = 100; - public static final Integer Foreign_Report_FRAGMENT_SIZE = 200; - /** - * 数据监控页面标题高亮长度 - */ - public static final Integer MONITOR_FRAGMENT_TITLE_SIZE = 50; - /** - * 数据导出查询大集群分页查询,每次最大查询量 - */ - public static final Integer EXPORT_SCROLL_SIZE = 1000; - /** - * 自定义长度 - */ - // title 长度 - public static final Integer MONITOR_FRAGMENT_USER_DEFINED_TITLE_SIZE = 30; - // 系统报告自定义长度 40 - public static final Integer SYS_REPORT_FRAGMENT_USER_DEFINED_TITLE_SIZE = 40; - public static final Integer FOREIGN_SYS_REPORT_FRAGMENT_USER_DEFINED_TITLE_SIZE = 80; - - public static final Integer MAX_FRAGMENT_USER_DEFINED_TITLE_SIZE = 50; - - // 预警报告的摘要长度 - public static final Integer MONITOR_FRAGMENT_USER_DEFINED_DIGEST_SIZE = 150; - public static final String DEFAULT_JOIN_SYMBOL = "."; - /** - * 主体情感默认名称 - */ - public static final String DEFAULT_ENTRY_NAME = "default"; - public static final String EMOTION_ENTRY = "emotionEntry"; - public static final String EMOTION_VALUE = "emotionValue"; - public static final String EMOTION_NAME = "entryName"; - public static final String OFF_SET = "offSet"; - public static final String MINIMUM_SHOULD_MATCH = "1"; - /* - * docType(news\bbs...):int 类型常量 - */ - public static final int DOCTYPENEWS = 0; - public static final int DOCTYPEBBS = 1; - /* - * 组合查询语句key值类型 - */ - public static final String KEYTYPEOPERA = "operator"; - public static final String KEYTYPEWORD = "word"; - /* - * 数据来源渠道 (hl \ bfd) - */ - public static final String CHANNELHL = "HL"; - public static final String CHANNELBFD = "BFD"; - /* - *1:type:content、title、all - *2: text:words(目前要是关键词列表) - */ - public static final String SEARCH_SCOPE_TYPE_TITLE = "title"; - public static final String ICON = "icon"; - - public static final String SEARCH_SCOPE_TYPE_CONTENT = "content"; - - //标题+正文 - public static final String SEARCH_SCOPE_TYPE_TITLE_ALL = "title_all"; - - public static final String SEARCH_SCOPE_TYPE_AUTHOR = "author"; - - public static final String SEARCH_SCOPE_TYPE_FORWARD = "forwardContent"; - - public static final String SEARCH_SCOPE_TYPE_TITLE_ORIGIN = "title_origin"; - - public static final String SEARCH_SCOPE_TYPE_CONTENT_ORIGIN = "content_origin"; - - public static final String SEARCH_SCOPE_TYPE_ALL = "all"; - - public static final String SEARCH_SCOPE_WECHAT_SUBSCRIPTION = "wechat_subscription"; - - /** - * SQ 4.0新增 UGC EGC PGC - */ - public static final String SEARCH_SCOPE_UGC = "ugc"; - - public static final String SEARCH_SCOPE_EGC = "egc"; - - public static final String SEARCH_SCOPE_PGC = "pgc"; - /** - * 关键词 - */ - public static final String SEARCH_SCOPE_TYPE_KEYWORDS = "keyWords"; - - public static final String REL_TYPE = "relType"; - - public static final String PRIMARY_POST = "primaryPost"; - - public static final String PRIMARY = "primary"; - - public static final String PT_PRIMARY = "ptPrimary"; - - public static final String DT_PRIMARY = "dtPrimary"; - - public static final String PT_ALL = "ptAll.keyword"; - - public static final String DT_ALL = "dtAll.keyword"; - - public static final String DATA_COUNT = "dataCount"; - - /** - * 回溯开始时间 - */ - public static final String CON_START_TIME = "conStartTime"; - /** - * 回溯结束时间 - */ - public static final String CON_END_TIME = "conEndTime"; - public static final String SUBJECT_ID = "subjectId"; - /* - *1:非敏感 positive - *2:敏感 negative - */ - public static final String COMMON_TAG = "common"; - public static final String NEGATIVE_TAG = "negative"; - public static final String NEUTER_TAG = "neuter"; - - public static final Integer COMMON_TAG_VALUE = 1; - public static final Integer NEGATIVE_TAG_VALUE = 3; - public static final Integer NEUTER_TAG_VALUE = 2; - - public static final String COMMON_CN_TAG = "正面"; - public static final String NEGATIVE_CN_TAG = "负面"; - public static final String NEUTER_CN_TAG = "中性"; - - public static final String AVAILABILITY = "availability"; - - public static final List SENTIMENT_LIST = new ArrayList(); - public static String URL_HASH = "urlHash"; - - static { - SENTIMENT_LIST.add(COMMON_TAG); - SENTIMENT_LIST.add(NEGATIVE_TAG); - SENTIMENT_LIST.add(NEUTER_TAG); - } - - // 正面 [0.8-1] - // 中性(0.2-0.8) - // 负面 [0-0.2] - public static final Double SENTIMENTAL_MID = 0.8; - public static final Double SENTIMENTAL_THRESHOLD = 0.2; - public static final Double SENTIMENTAL_MIN = 0.0; - public static final Double SENTIMENTAL_MAX = 1.0; - public static final String OPERATOR_OR = "or"; - public static final String OPERATOR_EQUAL = "="; - public static final String OPERATOR_SPACE = " "; - public static final String OPERATOR_ALL = "*:*"; - public static final String OPERATOR_CONNENT_ALL = ":"; - public static final String OPERATOR_SINGLE_ALL = "*"; - - - /* - *define es mapping fields - */ - public static String PUBTIME = "pubTime"; - public static String CHANNEL_HYLANDA = "hylanda"; - - public static String PUBTIME_STR = "pubTimeStr"; - - public static String CREATETIME = "createTime"; - public static String CREATETIMESTR = "createTimeStr"; - public static String CREATETIMEDAY = "createDay"; - - public static String PUTTIME = "putTime"; - public static String CRAWLTIME = "crawlTime"; - public static String ORIGINAL_SOURCE = "originalSource"; - public static String CONTENT_SIMHASH = "contentSimHash"; - public static String QUOTE_COUNT = "quoteCount"; - /** - * 内容 - */ - public static String CONTENT_TAG = "contentTag"; - public static String DT_EN_2 = "dtEn2"; - public static String DT_EN_1 = "dtEn1"; - public static String COMMENTS_COUNT = "commentsCount"; - public static String PAGE_COMMENTS_COUNT = "pageCommentCount"; - public static String ATTITUDES_COUNT = "attitudesCount"; - public static String TITLE_SIMHASH = "titleSimHash"; - public static String ORIGINAL_CONTENT_SIMHASH = "originalContentSimHash"; - public static String ORIGINAL_TITLE_SIMHASH = "originalTitleSimHash"; - public static String DOC_TYPE = "docType"; - public static String CHINA_DOC_TYPE = "chinaDocType"; - public static String SYS_SENTIMENT_TAG = "sysSentimentTag"; - public static final String TITLE = "title"; - public static final String USER_LEVEL_NAME = "userLevelName"; - public static String SOURCE = "source"; - - //微信专属字段,内容固定 value="微信" - public static String WEIXIN_SOURCE = "weixinSource"; - public static String CHANNEL = "channel"; - public static final String CONTENT = "content"; - public static final String SYS_SENTIMENT = "sysSentiment"; - /** - * DT情感标签 - */ - public static final String DT_SENTIMENT = "dtSentiment"; - /** - * PT情感标签 - */ - public static final String PT_SENTIMENT = "ptSentiment"; - - public static String URL = "url"; - public static String DOC_ID = "docId"; - public static String _ID = "_id_"; - public static String SYS_ABSTRACT = "sysAbstract"; - public static String SYS_KEYWORDS = "sysKeywords"; - // 所有热词 - public static String HL_KEYWORDS = "hlKeywords"; - public static String ALL_KEYWORDS = "allKeywords"; - public static String COMMENT_KEY_WORDS = "commentKeywords"; - public static String OPTIONS = "opinions"; - // 地名:places - public static String PLACES = "places"; - // 微博话题:hashTag - public static String HASH_TAG = "hashTag"; - public static String PICTURE_LIST = "pictureList"; - - // 表情:expression - public static String EXPRESSION = "expression"; - // 评价:opinions - public static String OPINIONS = "opinions"; - - public static String WEIBO_AUTHOR = "author"; - public static String WEIBO_USER_ID = "userId"; - public static String AUTHOR = "author"; - public static String WEIXIN_NAME = "weixinName"; - public static final String CHANNEL_WEIXIN = "weixin"; - public static final String HL_DOCID = "hylandaDocId"; - public static final String LANGUAGE = "language"; - - - /** - * _all字段 - */ - public static String _ALL = "_all"; - - /** - * 口碑 - */ - public static final String SHOP_MD5 = "shopUrlHash"; - public static final String HAS_PICTURE = "isCommentImg"; - public static final String HAS_CONTENT = "isComment"; - public static final String CUSTOMER_LEVEL = "customerLevel"; - public static final String COMMENT_STAR_LEVEL = "starLevel"; - public static final String SHOP_NAME = "shopName"; - public static final String NICKNAME = "nickName"; - public static final String COMMENT_SEARCH_ALL = "comment_all"; - public static final String USER_AVATAR = "userAvatar"; - public static final String UNIQUE_ID = "uniqueId"; - public static final String SHOP_URL = "shopUrl"; - public static final String USER_URL = "userUrl"; - public static final String CONTRIBUTION = "contribution"; - public static final String SCORE_FACTOR = "scoreFactor"; - public static final String FACTOR_KEY = "factorKey"; - public static final String FACTOR_VALUE = "factorValue"; - public static final String CONTENT_SIZE = "commentLength"; - public static final String SHOP_LABEL = "label"; - public static final String SHOP_CITY = "shopCity"; - public static final String SHOP_PROVINCE = "shopProvince"; - public static final String USER_CITY = "userCity"; - public static final String COUNTRY = "country"; - public static final String USER_PROVINCE = "userProvince"; - public static final String SHOP_LABELS = "shopLabels"; - public static final String COMMENT_IMG = "commentImg"; - - /** - * 用户头像 - */ - public static String WEIBO_AVATOR = "avatar"; - public static final String BBS = "bbs";//论坛 - public static final String WEI_BO = "weibo";//微博 - public static final String WEI_XIN = "weixin";//微信 - public static final String CH_WEI_XIN = "微信"; - public static final String BLOG = "blog";//博客 - public static final String NEWS = "news";//网站 - public static final String TIEBA = "tieba";//贴吧 - public static final String MEDIA = "media";//报刊 - public static final String VIDEO = "video";//视频 - public static final String WENDA = "wenda";//问答 - public static final String SHEJIAO = "shejiao";// 社交 - public static final String APP = "app"; - public static String WEIBO_DEFAULT_AVATOR = "http://tva1.sinaimg.cn/default/images/default_avatar_male_180.gif"; - - public static final String BAIDUKOUBEI = "baidukoubei"; - public static final String DIANPING = "dianping"; - public static final String FANGTIANXIA = "fangtianxia"; - public static final String BAIDUTIEBA = "baidutieba"; - public static final String SOUHU = "souhu"; - public static final String XIECHENG = "xiecheng"; - public static final String AUTOHOME = "autohome"; - public static final String TMALL = "tmall"; - public static final String YILONG = "yilong"; - // 电商 - public static final String ITEM = "item"; - public static final String ITEM_NAME = "itemName"; - public static final String ZIXUN = "zixun"; - public static final String FOREIGN_NEWS = "foreign_news"; - public static final String FOREIGN_MEDIA = "foreign_media"; - //电商星级分数 - public static final String COMMENT_SCORE = "commentScore"; - // 电商数据没有星级时返回-1 - public static final Double COMMENT_SCORE_NULL = -1.0; - public static final String EN_SOURCE = "enSource"; - - //内容识别 - public static final String NORMAL = "normal"; - public static final String MARKETING = "marketing"; - - public static final String AVATAR = "avatar"; - public static final String COMMENT_ID = "commentId"; - - - /** - * 微博信息 added by Eric 2016-10-28 15:03:31 - */ - public static String WEIBO_USER_SEX = "sex";// 性别 female \ male - public static String WEIBO_USER_SEX_FEMALE = "female";// 性别 female - public static String WEIBO_USER_SEX_MALE = "male"; - - public static String WEIBO_USER_FRIENDS_COUNT = "friendsCount";// 关注数 - public static String WEIBO_USER_FANS_COUNT = "fansCount";// 粉丝数 - public static String WEIBO_ATTITUDES_COUNT = "attitudesCount";// 赞数 - public static String WEIBO_COMMENTS_COUNT = "commentsCount";// 评论数 - public static String WEIBO_QUOTE_COUNT = "quoteCount";// 转发数 - public static String WEIBO_COUNT = "weiboCount";//用户转发微博数量 - public static String WEIBO_LOCATION = "location";//用户转发微博数量 - public static String WEIBO_USER_COUNTRY = "country";// 国家 - public static String WEIBO_USER_PROVINCE = "province";// 省份 - public static String WEIBO_USER_CITY = "city";// 城市 verified - public static String WEIBO_USER_AREA = "area"; - public static String WEIBO_MUNICIPALITY_BEIJING = "北京"; - public static String WEIBO_MUNICIPALITY_TIANJIN = "天津"; - public static String WEIBO_MUNICIPALITY_CHONGQING = "重庆"; - public static String WEIBO_MUNICIPALITY_SHANGHAI = "上海"; - - public static String WEIBO_USER_VERIFIED = "verified";// 认证类型 - public static String WEIBO_USER_NOT_VERIFIED_VALUE = "0";// 非认证类型 - public static String WEIBO_ORIGINAL_URL = "originalUrl";// 上层url - public static String WEIBO_EXPRESSION = "expression";// 表情图 - public static String WEIBO_EXPRESSION_TEXT = "expressionText";// 表情文本 - public static String WEIBO_FORWARD_URL = "forwardUrl";// 原文url - public static String FORWARD_USER_URL = "forwardUserUrl";// 原文url - public static String WEIBO_USER_TYPE = "userType"; - public static String WEIBO_POST_SOURCE = "postSource"; - public static String WEIBO_LEVEL = "level"; - public static String WEIBO_REPLY_COMMENT = "replycomment"; - public static String PRODUCT_ID = "productId"; - - - /** - * 微博转发信息 - */ - public static final String FORWARD_CONTENT = "forwardContent"; // 转发原文内容 - public static final String FORWARD_RELEASE_DATE = "forwardReleaseDate"; // 转发原文发布时间 - public static final String FORWARD_AUTHOR = "forwardAuthor"; // 转发原文作者昵称 - - public static final String FORWARD_QUOTE_COUNT = "forwardQuoteCount"; - public static final String FORWARD_POST_SOURCE = "forwardPostSource"; - public static final String FORWARD_COMMENT_COUNT = "forwardCommentsCount"; - public static final String FORWARD_ATTITUDES_COUNT = "forwardAttitudesCount"; - public static final String FORWARD_URL = "forwardUrl"; - public static final String FORWARD_AVATAR = "forwardAvatar"; - public static final String FORWARD_USER_TYPE = "forwardUserType"; - public static final String FORWARD_PUBTIME = "forwardPubTime"; - - - public static final String FORWARD_FLAG = "forwardFlag"; // 转发、回帖标志 1(转发、回帖) 0(原贴) - - public static final int REGULAR_PUBTIME_QUERY = 0; - - public static final int REGULAR_PUBTIME_AND_CREATETIME_QUERY = 1; - - - public static final List TYPE_LIST = new ArrayList<>(); - - public static final List BACKEND_ANALYSIS_LIST = new ArrayList<>(); - - public static final List BACKEND_AVAILABILITY_LIST = new ArrayList<>(); - - static { - BACKEND_ANALYSIS_LIST.add(1L); - BACKEND_ANALYSIS_LIST.add(2L); - BACKEND_AVAILABILITY_LIST.add(0L); - BACKEND_AVAILABILITY_LIST.add(1L); - } - - static { - TYPE_LIST.add(BBS); - TYPE_LIST.add(WEI_XIN); - TYPE_LIST.add(BLOG); - TYPE_LIST.add(WEI_BO); - TYPE_LIST.add(TIEBA); - TYPE_LIST.add(MEDIA); - TYPE_LIST.add(VIDEO); - TYPE_LIST.add(WENDA); - TYPE_LIST.add(ZIXUN); - TYPE_LIST.add(SHEJIAO); - - } - - public static final List APP_TYPE_LIST = new ArrayList(); - - static { - APP_TYPE_LIST.add(BBS); - APP_TYPE_LIST.add(WEI_XIN); - APP_TYPE_LIST.add(BLOG); - APP_TYPE_LIST.add(WEI_BO); - APP_TYPE_LIST.add(ZIXUN); - APP_TYPE_LIST.add(TIEBA); - APP_TYPE_LIST.add(MEDIA); - APP_TYPE_LIST.add(VIDEO); - APP_TYPE_LIST.add(WENDA); - APP_TYPE_LIST.add(FOREIGN_MEDIA); - APP_TYPE_LIST.add(FOREIGN_NEWS); - } - - /** - * 口碑评价对应渠道类型 - */ - public static final List ITEM_TYPE_LIST = new ArrayList(); - - private static final String MEITUAN = "meituan"; - - private static final String DIAPING = "dianping"; - - public static final String ID = "id"; - - public static final String COMMENTS = "comments"; - - public static final String REPOSTS = "reposts"; - - public static final String ATTITUDES = "attitudes"; - -// private static final String JD = "jd"; -// -// private static final String TAOBAO = "taobao"; -// -// private static final String TMALL = "tmall"; - - static { - ITEM_TYPE_LIST.add(MEITUAN); - ITEM_TYPE_LIST.add(DIAPING); -// ITEM_TYPE_LIST.add(JD); -// ITEM_TYPE_LIST.add(TAOBAO); -// ITEM_TYPE_LIST.add(TMALL); - - } - - public static final Map SORT_FLAG_MAPPING_MYSQL_SORT = new HashMap<>(); - - static { - SORT_FLAG_MAPPING_MYSQL_SORT.put(PUBTIME_DESC_SORT_FLAG, "pub_time desc"); - SORT_FLAG_MAPPING_MYSQL_SORT.put(PUBTIME_ASC_SORT_FLAG, "pub_time asc"); - SORT_FLAG_MAPPING_MYSQL_SORT.put(FOLDER_NUMBER_DESC_SORT_FLAG, "similarity_number desc"); - SORT_FLAG_MAPPING_MYSQL_SORT.put(CREATE_TIME_DESC_SORT_FLAG, "create_time desc"); - SORT_FLAG_MAPPING_MYSQL_SORT.put(CREATE_TIME_ASC_SORT_FLAG, "create_time asc"); - } - - - public static final String[] FIELD_LIST_MONITOR_NORMAL = EsQueryConditionUtils.getIncludeQueryField(ESConstant.CONTENT_SIMHASH - , ESConstant.TITLE_SIMHASH - , ESConstant.TITLE - , ESConstant.SOURCE - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - , ESConstant.URL - , ESConstant.SYS_SENTIMENT - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - , ESConstant.DOC_ID - , ESConstant.SYS_ABSTRACT - , ESConstant.WEIBO_AUTHOR - , ESConstant.WEIBO_AVATOR - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_ATTITUDES_COUNT - , ESConstant.WEIBO_COMMENTS_COUNT - , ESConstant.WEIBO_QUOTE_COUNT - , ESConstant.WEIBO_USER_TYPE - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_AREA - , ESConstant.WEIBO_USER_VERIFIED - , ESConstant.FORWARD_AUTHOR - , ESConstant.FORWARD_RELEASE_DATE - , ESConstant.FORWARD_CONTENT - , ESConstant.FORWARD_FLAG - , ESConstant.COMMENT_SCORE - , ESConstant.ATTITUDES_COUNT - , ESConstant.FORWARD_QUOTE_COUNT - , ESConstant.FORWARD_ATTITUDES_COUNT - , ESConstant.FORWARD_COMMENT_COUNT - , ESConstant.FORWARD_PUBTIME - , ESConstant.COMMENT_ID - , ESConstant.QUOTE_COUNT - , ESConstant.COMMENTS_COUNT - , FORWARD_POST_SOURCE - , WEIBO_POST_SOURCE - , FORWARD_URL - , FORWARD_AVATAR - , FORWARD_USER_TYPE - , ESConstant.ORIGINAL_SOURCE - , ESConstant.FORWARD_USER_URL - , ESConstant.CONTENT_TAG); - - public static final String[] FIELD_LIST_CRAWLEC_NORMAL = EsQueryConditionUtils.getIncludeQueryField(ESConstant.CONTENT_SIMHASH - , ESConstant.TITLE_SIMHASH - , ESConstant.ITEM_NAME - , ESConstant.TITLE - , ESConstant.SOURCE - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - , ESConstant.URL - , ESConstant.SYS_SENTIMENT - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - , ESConstant.DOC_ID - , ESConstant.SYS_ABSTRACT - , ESConstant.WEIBO_AUTHOR - , ESConstant.WEIBO_AVATOR - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_ATTITUDES_COUNT - , ESConstant.WEIBO_COMMENTS_COUNT - , ESConstant.WEIBO_QUOTE_COUNT - , ESConstant.WEIBO_USER_TYPE - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_AREA - , ESConstant.WEIBO_USER_VERIFIED - , ESConstant.FORWARD_AUTHOR - , ESConstant.FORWARD_RELEASE_DATE - , ESConstant.FORWARD_CONTENT - , ESConstant.FORWARD_FLAG - , ESConstant.COMMENT_SCORE - , ESConstant.ATTITUDES_COUNT - , ESConstant.FORWARD_QUOTE_COUNT - , ESConstant.FORWARD_ATTITUDES_COUNT - , ESConstant.FORWARD_COMMENT_COUNT - , ESConstant.FORWARD_PUBTIME - , ESConstant.COMMENT_ID - , ESConstant.QUOTE_COUNT - , ESConstant.COMMENTS_COUNT - , FORWARD_POST_SOURCE - , WEIBO_POST_SOURCE - , FORWARD_URL - , FORWARD_AVATAR - , FORWARD_USER_TYPE - , ESConstant.ORIGINAL_SOURCE - , ESConstant.FORWARD_USER_URL - , ESConstant.CONTENT_TAG); - - public static final String[] FIELD_LIST_MONITOR = { - ESConstant.PUBTIME, - ESConstant.TITLE_SIMHASH, - ESConstant.SCORE_FROM_SOURCE, - ESConstant.DOC_ID, - ESConstant.WEIBO_USER_PROVINCE, - ESConstant.SOURCE, - ESConstant.DOC_TYPE, - ESConstant.SYS_SENTIMENT, - ESConstant.AUTHOR, - ESConstant.QUOTE_COUNT, - ESConstant.WEIBO_USER_TYPE, - ESConstant.COMMENTS_COUNT, - ESConstant.CONTENT_TAG, - ESConstant.AVATAR}; - - public static final String[] FIELD_LIST_CRAWLEC = { - ESConstant.PUBTIME, - ESConstant._ID, - ESConstant.SCORE_FROM_SOURCE, - ESConstant.DOC_ID, - ESConstant.SOURCE, - ESConstant.DOC_TYPE, - ESConstant.SYS_SENTIMENT, - ESConstant.AUTHOR, - ESConstant.CONTENT_TAG, - ESConstant.AVATAR, - ESConstant.ITEM_NAME}; - - - public static final String[] FIELD_LIST_OTHER = { - ESConstant.PUBTIME, - ESConstant._ID, - ESConstant.SCORE_FROM_SOURCE, - ESConstant.DOC_ID, - ESConstant.WEIBO_USER_PROVINCE, - ESConstant.SOURCE, - ESConstant.DOC_TYPE, - ESConstant.SYS_SENTIMENT, - ESConstant.AUTHOR, - ESConstant.QUOTE_COUNT, - ESConstant.WEIBO_USER_TYPE, - ESConstant.COMMENTS_COUNT, - ESConstant.CONTENT_TAG, - ESConstant.AVATAR, - ESConstant.ITEM_NAME}; - - - public static final String[] FIELD_LIST_REPORT = { - ESConstant.PUBTIME, - ESConstant.TITLE_SIMHASH, - ESConstant.SCORE_FROM_SOURCE, - ESConstant.DOC_ID, - ESConstant.DOC_TYPE, - ESConstant.SOURCE, - ESConstant.URL, - ESConstant.SYS_SENTIMENT, - ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME, - ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE}; - - public static final String[] FIELD_LIST_CLOUD = { - ESConstant.HL_KEYWORDS, - ESConstant.PUBTIME, - ESConstant.DOC_ID, - ESConstant.DOC_TYPE, - ESConstant.SOURCE, - ESConstant.SYS_SENTIMENT}; - - - public static final String[] FIELD_LIST_ANALYSIS = - EsQueryConditionUtils.getIncludeQueryField( - ESConstant.PUBTIME - , ESConstant.TITLE_SIMHASH - , ESConstant.SCORE_FROM_SOURCE - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE - , ESConstant.HL_KEYWORDS - , ESConstant.SOURCE - , ESConstant.SYS_SENTIMENT - , ESConstant.WEIBO_AUTHOR - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_VERIFIED - , ESConstant.CONTENT_TAG - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - ); - - /** - * 话题对比分析 - */ - public static final String[] TOPIC_COMPARE_ANALYSIS = - EsQueryConditionUtils.getIncludeQueryField( - ESConstant.PUBTIME - , ESConstant.TITLE_SIMHASH - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE, - ESConstant.SYS_SENTIMENT - ); - public static final String[] FIELD_CLOUD_ANALYSIS = EsQueryConditionUtils.getIncludeQueryField( - // 所有 - ESConstant.HL_KEYWORDS - // 地名 - , ESConstant.PLACES - // 话题 - , ESConstant.HASH_TAG - // 评价 - , ESConstant.OPINIONS - // 表情 - , ESConstant.EXPRESSION - , ESConstant.DOC_ID - , ESConstant.SYS_SENTIMENT - , ESConstant.CONTENT_TAG - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - ); - - public static final String[] FIELD_CLOUD_ANALYSIS_CRAWL = EsQueryConditionUtils.getIncludeQueryField( - // 所有 - ESConstant.HL_KEYWORDS - // 地名 - , ESConstant.PLACES - // 话题 - , ESConstant.HASH_TAG - // 评价 - , ESConstant.OPINIONS - // 表情 - , ESConstant.EXPRESSION - , ESConstant.DOC_ID - , ESConstant.SYS_SENTIMENT - , ESConstant.CONTENT_TAG - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - ); - - public static final String[] FILED_SIMILAR_QUERY = EsQueryConditionUtils.getIncludeQueryField(ESConstant.CONTENT_SIMHASH - , ESConstant.TITLE_SIMHASH - , ESConstant.TITLE - , ESConstant.SOURCE - , ESConstant.ORIGINAL_SOURCE - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - , ESConstant.QUOTE_COUNT - , ESConstant.COMMENTS_COUNT - , ESConstant.URL - , ESConstant.CONTENT_TAG - , ESConstant.SYS_SENTIMENT - , ESConstant.CONTENT - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - , ESConstant.DOC_ID - , ESConstant.WEIBO_AUTHOR - , ESConstant.SYS_ABSTRACT - , ESConstant.TITLE_SIMHASH - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , WEIBO_POST_SOURCE - , WEIBO_USER_TYPE - , QUOTE_COUNT - , ATTITUDES_COUNT - , COMMENTS_COUNT - , COMMENT_ID - , COMMENT_SCORE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_AREA - , ESConstant.WEIBO_AVATOR); - - public static final String[] FIELD_LIST_ANALYSIS_TREND = - EsQueryConditionUtils.getIncludeQueryField(ESConstant.PUBTIME - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE - , ESConstant.SYS_SENTIMENT - , ESConstant.CRAWLTIME - ); - - public static final String[] FIELD_LIST_ANALYSIS_WEIBO = - EsQueryConditionUtils.getIncludeQueryField(ESConstant.PUBTIME - , ESConstant.TITLE_SIMHASH - , ESConstant.SCORE_FROM_SOURCE - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE - , ESConstant.SOURCE - , ESConstant.SYS_SENTIMENT - , ESConstant.WEIBO_AUTHOR - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_VERIFIED - , ESConstant.WEIBO_POST_SOURCE - , ESConstant.FORWARD_QUOTE_COUNT - , ESConstant.FORWARD_COMMENT_COUNT - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - , ESConstant.CONTENT_TAG - , ESConstant.COMMENT_ID - ); - - public static final String[] FIELD_LIST_ANALYSIS_WEIBO_USER = - EsQueryConditionUtils.getIncludeQueryField(ESConstant.PUBTIME - , ESConstant.DOC_ID - , ESConstant.TITLE_SIMHASH - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_AVATOR - ); - - public static final String[] FIELD_LIST_EMOTION = EsQueryConditionUtils.getIncludeQueryField(ESConstant.SYS_SENTIMENT - , ESConstant.TITLE - , ESConstant.TITLE_SIMHASH - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE - , ESConstant.URL - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE); - public static final int MAX_UPDATE_NUMBER = 1000; - /** - * updated the settings; - * from default 100 to 1000 - */ - public static final int MAX_INNER_RESULT_WINDOW = 1000; - - public static final String[] FIELD_LIST_DOWNLOAD_SMALL = {ESConstant.PUBTIME, ESConstant.TITLE_SIMHASH, ESConstant.SCORE_FROM_SOURCE, ESConstant.DOC_ID, ESConstant.WEIBO_USER_PROVINCE, ESConstant.WEIBO_USER_CITY}; - public static String[] FIELD_LIST_DOWNLOAD = EsQueryConditionUtils.getIncludeQueryField( - ESConstant.CONTENT_SIMHASH - , ESConstant.TITLE_SIMHASH - , ESConstant.TITLE - , ESConstant.SOURCE - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - , ESConstant.URL - , ESConstant.SYS_SENTIMENT - , ESConstant.DOC_ID - , ESConstant.SYS_ABSTRACT - , ESConstant.WEIBO_AUTHOR - , ESConstant.WEIBO_AVATOR - , ESConstant.CONTENT_TAG - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - // Added by Eric 2016-10-28 15:03:31 - , ESConstant.WEIBO_USER_SEX - , ESConstant.WEIBO_USER_FRIENDS_COUNT - , ESConstant.WEIBO_USER_FANS_COUNT - , ESConstant.WEIBO_ATTITUDES_COUNT - , ESConstant.WEIBO_COMMENTS_COUNT - , ESConstant.WEIBO_QUOTE_COUNT - , ESConstant.WEIBO_USER_COUNTRY - , ESConstant.WEIBO_USER_PROVINCE - , ESConstant.WEIBO_USER_CITY - , ESConstant.WEIBO_USER_VERIFIED - /**@FIXED 2017.05.19 add field originalSource、content for export excel*/ - , ESConstant.ORIGINAL_SOURCE - , ESConstant.CONTENT); - - - public static HighlightBuilder HIGHLIGHT_FOR_DOWNLOAD = new HighlightBuilder(). - field(ESConstant.CONTENT). - field(ESConstant.TITLE). - field(ESConstant.CONTENT + ESConstant.bigramPostfix). - field(ESConstant.TITLE + ESConstant.bigramPostfix). - preTags(ESConstant.TAG_START). - postTags(ESConstant.TAG_END). - fragmentSize(ESConstant.MONITOR_FRAGMENT_SIZE); - - - public static final String[] areaArray = EsQueryConditionUtils.getIncludeQueryField( - ESConstant.WEIBO_USER_COUNTRY, - ESConstant.WEIBO_USER_PROVINCE, - ESConstant.WEIBO_USER_CITY, - ESConstant.WEIBO_USER_AREA); - public static final String[] municipalityArray = EsQueryConditionUtils.getIncludeQueryField( - ESConstant.WEIBO_MUNICIPALITY_BEIJING, - ESConstant.WEIBO_MUNICIPALITY_CHONGQING, - ESConstant.WEIBO_MUNICIPALITY_SHANGHAI, - ESConstant.WEIBO_MUNICIPALITY_TIANJIN); - - - public static final String[] COMMENT_DETAILS_ARRY = { - PUBTIME, - DOC_TYPE, - DOC_ID, - AUTHOR, - SOURCE, - CONTENT, - SYS_SENTIMENT, - CONTENT_TAG, - DT_EN_1, DT_EN_2, - TITLE, - USER_LEVEL_NAME, - HL_KEYWORDS, - COMMENT_KEY_WORDS, - OPTIONS, - COMMENT_SCORE, - URL - }; - - public static final String BRAND = "brand"; - public static final String[] FIELD_ECOMMERCE_EXPORT = { - PUBTIME, - DOC_TYPE, - DOC_ID, - AUTHOR, - SOURCE, - CONTENT, - PRODUCT_ID, - BRAND, - ITEM_NAME, - SHOP_NAME, - URL, - "dt1", - "dt2", - "dt3", - "dt4", - "dt5", - DT_SENTIMENT, - "pt1", - "pt2", - "pt3", - "pt4", - "pt5", - PT_SENTIMENT - }; - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java deleted file mode 100644 index 0123d7c..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.bfd.mf.common.util; - -import com.bfd.mf.common.service.es.ClusterService; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.elasticsearch.action.search.SearchRequestBuilder; -import org.elasticsearch.action.support.IndicesOptions; -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.common.transport.TransportAddress; -import org.elasticsearch.transport.client.PreBuiltTransportClient; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.PostConstruct; -import java.io.Serializable; -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * 区别多环境问题 - */ -@Component -public class ESServerUtils implements Serializable { - private static Logger logger = LoggerFactory.getLogger(ESServerUtils.class); - private static final long serialVersionUID = 1L; - private static Map clientByClusterId = new HashMap<>(); - @Autowired - private ClusterService clusterService; - - @PostConstruct - public void initEsServer() { - - Iterable iterator = clusterService.getAll(); - long startTime = System.currentTimeMillis(); - iterator.forEach((final Cluster cluster) -> - { - logger.info("[Initial Elastic Search] Initial ES handler, the cluster name is {}", cluster.getClusterName()); - System.setProperty("es.set.netty.runtime.available.processors", "false"); - Settings settings = Settings.builder().put("cluster.name", - cluster.getClusterName()) - .put("client.transport.sniff", false) - .build(); - try { - logger.info("[Initial Elastic Search] Initial First Url= {} and First Port={} clusterName = {}", - cluster.getIp(), cluster.getTcpPort(), cluster.getClusterName()); - TransportClient client = new PreBuiltTransportClient(settings); - String[] ports = cluster.getTcpPort().split(","); - int index = 0; - for (String ip : cluster.getIp().split(",")) { - int port = Integer.parseInt(ports[index]); - client.addTransportAddress(new TransportAddress(InetAddress.getByName(ip), port)); - index++; - } - logger.info("[Initial Elastic Search] Initial ES Finished.the client is{} ", client); - clientByClusterId.put(cluster.getId(), client); - } catch (UnknownHostException e) { - logger.error("UnknownHostException occurs while creating TransportClient,error message={}", e); - System.exit(1); - } catch (Exception ex) { - logger.error("Exception occurs while creating TransportClient,error message={}", ex); - System.exit(1); - } - logger.info("[Initial Elastic Search] Initial ES handler finish..."); - } - ); - long endTime = System.currentTimeMillis(); - logger.info("[Initial Elastic Search] finish,the used time is {}", (endTime - startTime)); - } - - - public TransportClient getClientByClusterId(Long clusterId) { - return clientByClusterId.get(clusterId); - } - - /** - * 根据索引 List 查询指定ES - */ - public SearchRequestBuilder buildSearchRequestBuilder(Long clusterId, List indexList) { - - SearchRequestBuilder indexSearch = null; - try { - if (TObjectUtils.isListEmpty(indexList)) { - indexSearch = getClientByClusterId(clusterId).prepareSearch(clusterService.get(clusterId).getPrefixIndexPattern() + "_*"); - } else { - indexSearch = getClientByClusterId(clusterId).prepareSearch((String[]) indexList.toArray(new String[indexList.size()])); - } - // allowNoIndices: true,不存在的索引不会抛异常;false,抛异常 - indexSearch.setIndicesOptions(IndicesOptions.fromOptions(true, true, - true, false)); - } catch (Exception e) { - logger.error("[ESServerUtils] buildSearchRequestBuilder: build SearchRequestBuilder error,the error message is:{}", e); - } - return indexSearch; - } - - -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/EsQueryConditionUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/EsQueryConditionUtils.java deleted file mode 100644 index 74ea368..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/EsQueryConditionUtils.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.bfd.mf.common.util; - - -public class EsQueryConditionUtils { - - - public static String[] getIncludeQueryField(String... includeField) { - String[] includeFields = new String[includeField.length]; - System.arraycopy(includeField, 0, includeFields, 0, includeField.length - 1 + 1); - return includeFields; - } - - - public static String[] getExcludeQueryField(String... excludeField) { - String[] excludeFields = new String[excludeField.length]; - System.arraycopy(excludeField, 0, excludeFields, 0, excludeField.length - 1 + 1); - return excludeFields; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/OperatorUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/OperatorUtil.java deleted file mode 100644 index 4e8d433..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/OperatorUtil.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.bfd.mf.common.util; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - - -public class OperatorUtil { - private static final Character[] seps = new Character[] { '&', '|', '~', '<', '《', '>', '》', '(', '(', ')', ')', - ',', ',', '"', '“', '”' };// 分隔符,将整个表达式分隔成若干个子串进行处理 - private static final Character[] ops = new Character[] { '&', '|', '~' };// 去掉'!' - public static final List operators = new ArrayList(); - public static final List seperators = new ArrayList(); - - static { - operators.addAll(Arrays.asList(ops)); - seperators.addAll(Arrays.asList(seps)); - } - - public static boolean isOperator(char c) { - return operators.contains(c); - } - - - public static boolean isSeperator(char c) { - return seperators.contains(c); - } - - - public static int priorityCompare(char op1, char op2) { - // ()>!>&>| - switch (op1) { - case '!': - case '!': - return op2 == '(' || op2 == ')' ? -1 : 1; - case '&': - return op2 == '!' ? -1 : (op2 == '|' ? 1 : 0); - case '|': - return op2 == '|' ? 0 : -1; - } - return 0; - } - - - public static boolean matchChar(char c, char c2) { - switch (c) { - case '(': - case '(': - return c2 == ')' || c2 == ')'; - case ')': - case ')': - return c2 == '(' || c2 == '('; - case '>': - case '》': - return c2 == '<' || c2 == '《'; - case '<': - case '《': - return c2 == '>' || c2 == '》'; - default: - break; - } - return false; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DataAnalysisUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DataAnalysisUtils.java deleted file mode 100644 index 86e4bbd..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DataAnalysisUtils.java +++ /dev/null @@ -1,354 +0,0 @@ -package com.bfd.mf.common.util.analysis; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.enums.SpreadEnums; -import com.bfd.mf.common.web.vo.view.analysis.*; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.stream.IntStream; - -public class DataAnalysisUtils { - - private static final Logger logger = LoggerFactory.getLogger(DataAnalysisUtils.class); - - private static final Long ONE_HOUR = 60 * 60 * 1000L; - private static final Integer COUNT = 10; - private static final Integer ZERO = 0; - private static final Long ONE_DAY = 60 * 60 * 24 * 1000L; - private static final Long EIGHT_HOUR = 60 * 60 * 8 * 1000L; - - - /** - * 根据时间,敏感等趋势图得到 pie 和 four total Count - */ - public static JSONObject fetchPieAndCountNumberByLineJson(JSONObject jsonObject) { - - Long negativeNumber = 0L; - try { - Map> emotionsMap = (Map>) jsonObject.get("emotions"); - List negativeTimeList = emotionsMap.get(ESConstant.NEGATIVE_CN_TAG); - for (Long number : negativeTimeList) { - negativeNumber = negativeNumber + number; - } - - PieCount emotionPieCount = fetchPieCount(emotionsMap, 0); - Map> channelsMap = (Map>) jsonObject.get("channels"); - PieCount channelPieCount = fetchPieCount(channelsMap, 1); - - jsonObject.put("emotionCounts", emotionPieCount.getEmotionCounts()); - jsonObject.put("channelCounts", channelPieCount.getChannelCounts()); - jsonObject.put("negativeNumber", negativeNumber); - } catch (Exception e) { - logger.error("fetchPieAndCountNumberByLineJson error =", e); - } - return jsonObject; - } - - private static PieCount fetchPieCount(Map> channelsMap, int type) { - PieCount pieCount = new PieCount(); - if (TObjectUtils.nonNull(channelsMap)) { - for (String name : channelsMap.keySet()) { - long temp; - List longs = channelsMap.get(name); - temp = longs.stream().mapToLong(number -> number).sum(); - DataPieCount dataPieCount = new DataPieCount(name, temp); - if (type == 0) { - pieCount.getEmotionCounts().add(dataPieCount); - - } else if (type == 1) { - pieCount.getChannelCounts().add(dataPieCount); - } - } - } - return pieCount; - } - - public static Long[] getTimeList(Long startTime, Long endTime, Integer type) { - Long[] timeList = null; - try { - Long interval; - if (type.equals(SpreadEnums.TREND.UNIT_HOUR)) { - interval = ONE_HOUR; - } else if (type.equals(SpreadEnums.TREND.UNIT_DAY)) { - interval = ONE_DAY; - } else { - throw new Exception(" !!! type is illegal !!!"); - } - Double intervalNum = Math.ceil((endTime - startTime) / (double) interval); - if ((endTime - startTime) % interval == 0) { - intervalNum = intervalNum + 1; - } - timeList = new Long[intervalNum.intValue()]; - Long time = startTime; - for (int i = 0; i < intervalNum; i++) { - if (i == 0) { - timeList[i] = time; - } else if (i == intervalNum - 1) { - timeList[i] = endTime; - } else { - time = time + interval; - Long dayStartTime = DateTrendUtils.getDayStartTime(time); - if (dayStartTime <= timeList[i - 1]) { - timeList[i] = time; - } else { - timeList[i] = dayStartTime; - } - } - } - } catch (Exception e) { - logger.error("[DataAnalysisUtils] getTimeList: failed, startTime is {}, endTime is {}, timeList is {}, error is ", startTime, endTime, timeList, e); - } - return timeList; - } - - public static Map> initEmotionList(Long[] timeList) { - Map> negativeChannelMaps = new HashMap<>(); - List emotionName = new ArrayList<>(); - emotionName.add(ESConstant.NEGATIVE_TAG); - emotionName.add(ESConstant.COMMON_TAG); - for (String name : emotionName) { - for (Long aTimeList : timeList) { - List dataLineCounts = new ArrayList<>(); - DataLineCount dataLineCount = fetchDataLineCountObject(0, name, aTimeList); - dataLineCounts.add(dataLineCount); - negativeChannelMaps.put(name, dataLineCounts); - } - } - return negativeChannelMaps; - } - - private static DataLineCount fetchDataLineCountObject(long data, String name, Long aStart) { - DataLineCount dataLineCount = new DataLineCount(); - dataLineCount.setData(data); - dataLineCount.setName(name); - dataLineCount.setTimestamp(aStart); - return dataLineCount; - } - - public static void parseTimeSeries(Map> channelMaps, - Map> emotionMaps, - String emotionTag, - Map> combineChannelMaps) { - for (Map.Entry> entry : channelMaps.entrySet()) { - List commonChannelLists = entry.getValue(); - if (Optional.ofNullable(commonChannelLists).isPresent()) { - for (DataLineCount dataLineCount : commonChannelLists) { - if (emotionTag.equals(ESConstant.NEGATIVE_TAG)) { - buildEmotionResult(emotionMaps, dataLineCount, "0.0-" + ESConstant.SENTIMENTAL_THRESHOLD); - } else if (emotionTag.equals(ESConstant.NEUTER_TAG)) { - buildEmotionResult(emotionMaps, dataLineCount, ESConstant.SENTIMENTAL_THRESHOLD + "-" + ESConstant.SENTIMENTAL_MID); - } else { - buildEmotionResult(emotionMaps, dataLineCount, ESConstant.SENTIMENTAL_MID + "-" + ESConstant.SENTIMENTAL_MAX); - } - - if (null != combineChannelMaps) { - if (!combineChannelMaps.containsKey(entry.getKey())) { - List combineChannelLists = new ArrayList<>(); - DataLineCount newDataLineCount = new DataLineCount(); - newDataLineCount.setName(dataLineCount.getName()); - newDataLineCount.setTimestamp(dataLineCount.getTimestamp()); - newDataLineCount.setData(dataLineCount.getData()); - combineChannelLists.add(newDataLineCount); - combineChannelMaps.put(entry.getKey(), combineChannelLists); - } else { - List alreadyLists = combineChannelMaps.get(entry.getKey()); - if (alreadyLists.contains(dataLineCount)) { - alreadyLists.get(alreadyLists.indexOf(dataLineCount)).setData(alreadyLists.get(alreadyLists.indexOf(dataLineCount)).getData() + dataLineCount.getData()); - } else { - alreadyLists.add(dataLineCount); - } - } - } - } - } - } - } - - /** - * 计算情感 - */ - private static void buildEmotionResult(Map> emotionMaps, DataLineCount dataLineCount, String emotionTag) { - if (!emotionMaps.containsKey(emotionTag)) { - List negativeLists = new ArrayList<>(); - DataLineCount newDataLineCount = new DataLineCount(); - newDataLineCount.setName(dataLineCount.getName()); - newDataLineCount.setTimestamp(dataLineCount.getTimestamp()); - newDataLineCount.setData(dataLineCount.getData()); - negativeLists.add(newDataLineCount); - emotionMaps.put(emotionTag, negativeLists); - } else { - List alreadyLists = emotionMaps.get(emotionTag); - - if (alreadyLists.contains(dataLineCount)) { - alreadyLists.get(alreadyLists.indexOf(dataLineCount)).setData(alreadyLists.get(alreadyLists.indexOf(dataLineCount)).getData() + dataLineCount.getData()); - } else { - DataLineCount newDataLineCount = new DataLineCount(); - newDataLineCount.setName(dataLineCount.getName()); - newDataLineCount.setTimestamp(dataLineCount.getTimestamp()); - newDataLineCount.setData(dataLineCount.getData()); - alreadyLists.add(newDataLineCount); - } - } - } - - - public static Map> fetchPerChannelCountByListData(List cacheEsMonitorEntityList, - Long[] timeList, int type) { - Map> channelMaps = new HashMap<>(); - for (ESMonitorEntity esMonitorEntity : cacheEsMonitorEntityList) { - String name = esMonitorEntity.getDocType(); - DataAnalysisUtils.fetchFilterResultByTimeCompare(channelMaps, name, esMonitorEntity, timeList, type); - } - return channelMaps; - } - - /** - * 时间段统计数量 - */ - public static void fetchFilterResultByTimeCompare(Map> negativeChannelMaps, - String name, - ESMonitorEntity esMonitorEntity, - Long[] timeList, - int type) { - Long pubTime = esMonitorEntity.getPubTime(); - int length = timeList.length; - boolean isZeroTime = false; - for (int i = 0; i < length; i++) { - Long aStart; - Long aEnd = null; - if (type == 1) { - // 针对天 - if (i == length - 1) { - long temp; - aStart = timeList[i]; - isZeroTime = isZeroTime(aStart); - if (isZeroTime) { - aEnd = timeList[i]; - } else { - temp = getDayTime(aStart); - if (aStart < temp) { - // 大于8小时 - if (temp > aStart) { - temp = temp - ONE_DAY; - } - aEnd = aStart; - aStart = temp; - } else { - aEnd = aStart; - aStart = temp; - } - } - - } else if (i == length - 2) { - long temp; - aStart = timeList[i]; - temp = getDayTime(aStart); - if (aStart <= temp) { - aEnd = aStart + ONE_DAY; - } - } else { - aStart = timeList[i]; - aEnd = timeList[i + 1]; - } - } else { - if (i == length - 1) { - aStart = timeList[i]; - aEnd = aStart + ONE_DAY; - } else { - aStart = timeList[i]; - aEnd = timeList[i + 1]; - } - } - - if (pubTime >= aStart && (pubTime < aEnd || isZeroTime)) { - long temp = aStart; - // 天,零点, - if (i == length - 1 && !isZeroTime && type == 1) { - temp = aEnd; - } - if (negativeChannelMaps.containsKey(name)) { - List dataLineCounts = negativeChannelMaps.get(name); - boolean existTime = false; - for (DataLineCount dataLineCount : dataLineCounts) { - Long timestamp = dataLineCount.getTimestamp(); - if (Objects.equals(timestamp, temp)) { - dataLineCount.setData(dataLineCount.getData() + 1); - existTime = true; - break; - } - } - if (!existTime) { - DataLineCount dataLineCount = fetchDataLineCountObject(1L, name, temp); - dataLineCounts.add(dataLineCount); - negativeChannelMaps.put(name, dataLineCounts); - } - } else { - List dataLineCounts = new ArrayList<>(); - DataLineCount dataLineCount = fetchDataLineCountObject(1L, name, temp); - dataLineCounts.add(dataLineCount); - negativeChannelMaps.put(name, dataLineCounts); - } - break; - } - } - } - private static boolean isZeroTime(Long time) { - SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); - return dateFormat.format(time).equals("00:00:00"); - - } - private static long getDayTime(Long aStart) { - long dayTime = aStart - (aStart) % ONE_DAY; - dayTime = dayTime - EIGHT_HOUR; - dayTime = dayTime + ONE_DAY; - return dayTime; - } - - - public static Long[] fetchPerTimeByPerChannelCountResult(Map> channelPerTimeMap, Long[] timeArray) { - Long[] docNumList = IntStream.range(0, timeArray.length).mapToObj(i -> 0L).toArray(Long[]::new); - for (int i = 0; i < timeArray.length; i++) { - long temp = 0; - for (String key : channelPerTimeMap.keySet()) { - temp = channelPerTimeMap.get(key).get(i) + temp; - } - docNumList[i] = temp; - } - return docNumList; - } - - public static JSONArray getEmotionOrChannelTrendTime(List dataList, - Long[] timeList, - JSONArray timeArr, - int type) throws ParseException { - if (TObjectUtils.isListEmpty(dataList)) { - return null; - } - Long[] docNumList = new Long[dataList.size()]; - for (int i = 0; i < dataList.size(); i++) { - docNumList[i] = dataList.get(i); - } - JSONArray countByHourData = null; - switch (type) { - case 1: - countByHourData = DateTrendUtils.getDayCountByHourData(timeList, timeArr, docNumList); - break; - case 2: - countByHourData = DateTrendUtils.getMonthCountByHourData(timeList, timeArr, docNumList); - break; - case 3: - countByHourData = DateTrendUtils.getYearCountByHourData(timeList, timeArr, docNumList); - default: - break; - } - return countByHourData; - } -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DateTrendUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DateTrendUtils.java deleted file mode 100644 index 9046502..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/analysis/DateTrendUtils.java +++ /dev/null @@ -1,279 +0,0 @@ -package com.bfd.mf.common.util.analysis; - -import com.alibaba.fastjson.JSONArray; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.GregorianCalendar; -import java.util.LinkedHashSet; -import java.util.Set; - -public class DateTrendUtils { - - - /** - * 获得该月第一天 - */ - public static String getFirstDayOfMonth(Integer year, Integer month) throws ParseException { - Calendar cal = Calendar.getInstance(); - //设置年份 - cal.set(Calendar.YEAR, year); - //设置月份 - cal.set(Calendar.MONTH, month - 1); - //获取某月最小天数 - int firstDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH); - //设置日历中月份的最小天数 - cal.set(Calendar.DAY_OF_MONTH, firstDay); - //格式化日期 - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - return sdf.format(cal.getTime()); - } - - /** - * 获得该月最后一天 - */ - private static String getLastDayOfMonth(Integer year, Integer month) throws ParseException { - Calendar cal = Calendar.getInstance(); - //设置年份 - cal.set(Calendar.YEAR, year); - //设置月份 - cal.set(Calendar.MONTH, month - 1); - //获取某月最大天数 - int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH); - //设置日历中月份的最大天数 - cal.set(Calendar.DAY_OF_MONTH, lastDay); - //格式化日期 - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - return sdf.format(cal.getTime()); - } - - - /** - * 得到月的统计值 - */ - public static JSONArray getMonthCountByHourData(Long[] timeList, JSONArray monthArr, Long[] countArr) throws ParseException { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM"); - // 存储 Mark - JSONArray markArr = new JSONArray(); - for (int i = 0; i < monthArr.size(); i++) { - Long dayEndTime = getMonthEndDay(getDayEndTime(format.parse(monthArr.getString(i)).getTime())); - int mark = 0; - for (int j = 0; j < timeList.length; j++) { - if (dayEndTime < timeList[j]) { - mark = j; - break; - } else if (dayEndTime.equals(timeList[j])) { - mark = j + 1; - break; - } - } - mark = mark == 0 ? timeList.length : mark; - markArr.add(mark); - } - // new data - return getNewCountData(markArr, countArr); - } - - /** - * 得到天的统计值 - */ - public static JSONArray getDayCountByHourData(Long[] timeList, JSONArray dayArr, Long[] countArr) throws ParseException { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - // 存储 Mark - JSONArray markArr = new JSONArray(); - for (int i = 0; i < dayArr.size(); i++) { - Long dayEndTime = getDayEndTime(format.parse(dayArr.getString(i)).getTime()); - int mark = 0; - for (int j = 0; j < timeList.length; j++) { - if (dayEndTime < timeList[j]) { - mark = j; - break; - } else if (dayEndTime.equals(timeList[j])) { - mark = j + 1; - break; - } - } - mark = mark == 0 ? timeList.length : mark; - markArr.add(mark); - } - - // new data - return getNewCountData(markArr, countArr); - } - - /** - * 得到年的统计值 - */ - public static JSONArray getYearCountByHourData(Long[] timeList, JSONArray yearArr, Long[] countArr) throws ParseException { - SimpleDateFormat format = new SimpleDateFormat("yyyy"); - // 存储 Mark - JSONArray markArr = new JSONArray(); - for (int i = 0; i < yearArr.size(); i++) { - Long dayEndTime = getDayEndTime(getYearEndDay(format.parse(yearArr.getString(i)).getTime())); - int mark = 0; - for (int j = 0; j < timeList.length; j++) { - if (dayEndTime < timeList[j]) { - mark = j; - break; - } else if (dayEndTime.equals(timeList[j])) { - mark = j + 1; - break; - } - } - mark = mark == 0 ? timeList.length : mark; - markArr.add(mark); - } - // new data - return getNewCountData(markArr, countArr); - } - - /** - * 计算得到的统计值 - */ - private static JSONArray getNewCountData(JSONArray markArr, Long[] countArr) { - JSONArray newData = new JSONArray(); - for (int j = 0; j < markArr.size(); j++) { - int startIndex = 0; - int endIndex; - if (j == 0) { - endIndex = markArr.getInteger(j); - } else { - endIndex = markArr.getInteger(j); - startIndex = markArr.getInteger(j - 1); - } - - long count = 0; - for (; startIndex < endIndex; startIndex++) { - count = count + countArr[startIndex]; - } - newData.add(count); - } - return newData; - } - - /** - * 一天的开始时间 - */ - public static Long getDayStartTime(Long time) { - Calendar todayStart = new GregorianCalendar(); - todayStart.setTimeInMillis(time); - - todayStart.set(Calendar.HOUR_OF_DAY, 0); - todayStart.set(Calendar.MINUTE, 0); - todayStart.set(Calendar.SECOND, 0); - todayStart.set(Calendar.MILLISECOND, 0); - return todayStart.getTime().getTime(); - - } - - /** - * 一天的结束时间 - */ - public static Long getDayEndTime(Long time) { - Calendar todayEnd = new GregorianCalendar(); - todayEnd.setTimeInMillis(time); - - todayEnd.set(Calendar.HOUR_OF_DAY, 23); - todayEnd.set(Calendar.MINUTE, 59); - todayEnd.set(Calendar.SECOND, 59); - todayEnd.set(Calendar.MILLISECOND, 999); - return todayEnd.getTime().getTime(); - - } - - /** - * 月的最后一天 - */ - private static Long getMonthEndDay(Long time) { - Calendar ca = new GregorianCalendar(); - ca.setTimeInMillis(time); - ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH)); - return ca.getTime().getTime(); - } - - /** - * 月的第一天 - */ - public static Long getMonthStartDay(Long time) { - Calendar c = new GregorianCalendar(); - c.setTimeInMillis(time); - c.add(Calendar.MONTH, 0); - c.set(Calendar.DAY_OF_MONTH, 1); //设置为1号,当前日期既为本月第一天 - return c.getTime().getTime(); - } - - /** - * 年的最后一天 - */ - private static Long getYearEndDay(Long time) { - Calendar c = new GregorianCalendar(); - c.setTimeInMillis(time); - c.set(Calendar.DAY_OF_YEAR, c.getActualMaximum(Calendar.DAY_OF_YEAR)); - return c.getTime().getTime(); - - } - - /** - * 年的第一天 - */ - public static Long getYearStartDay(Long time) { - Calendar c = new GregorianCalendar(); - c.setTimeInMillis(time); - c.add(Calendar.YEAR, 0); - c.set(Calendar.DAY_OF_YEAR, 1); - - return c.getTime().getTime(); - - } - - - /** - * 得到天,月,年数组 - */ - private static JSONArray getStrTime(Long[] timeList, SimpleDateFormat format) { - Set setTime = new LinkedHashSet<>(); - for (Long aLong : timeList) { - String s = format.format(aLong); - setTime.add(s); - } - JSONArray arrayTime = new JSONArray(); - arrayTime.addAll(setTime); - return arrayTime; - } - - /** - * 转换 day,month,year arr - */ - public static JSONArray convertStrTime(Long[] timeList, int type) { - JSONArray arrayTime; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - switch (type) { - case 1: - // day - format = new SimpleDateFormat("yyyy-MM-dd"); - break; - case 2: - // month - format = new SimpleDateFormat("yyyy-MM"); - break; - case 3: - // year - format = new SimpleDateFormat("yyyy"); - break; - default: - break; - } - arrayTime = getStrTime(timeList, format); - return arrayTime; - } - - /** - * 获取小时 - */ - public static String getHourByLongTime(Long longTime) { - SimpleDateFormat format = new SimpleDateFormat("HH"); - return format.format(longTime); - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/cache/ResponseParseUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/cache/ResponseParseUtils.java deleted file mode 100644 index 76bb676..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/cache/ResponseParseUtils.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.bfd.mf.common.util.cache; - -import com.bfd.mf.common.util.es.MonitorUtils; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorBaseEntity; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.elasticsearch.action.search.SearchResponse; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -public class ResponseParseUtils { - private static Logger logger = LoggerFactory.getLogger(ResponseParseUtils.class); - - public static long combineEsAndCatchResponse( - List cacheResponse, - Map timeSeriesMap) { - Map idSet = combineEsAndCatchResponseWithDocId( - cacheResponse, - timeSeriesMap); - return idSet.size(); - } - - public static Map combineEsAndCatchResponseWithDocId( - List cacheResponse, - Map timeSeriesMap) { - Map docIdWithAreaMap = new HashMap<>(); - if (!TObjectUtils.isListEmpty(cacheResponse)) { - cacheResponse.forEach(response -> - MonitorUtils.parseTimeSeries( - response, - docIdWithAreaMap, - timeSeriesMap) - ); - } - logger.info("[combineEsAndCatchResponseWithDocIdCrawl method] the all doc number is {},the folder doc number is {}", docIdWithAreaMap.size(), timeSeriesMap.size()); - return docIdWithAreaMap; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ConditionCommon.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ConditionCommon.java deleted file mode 100644 index 662e641..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ConditionCommon.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.bfd.mf.common.util.constants; - -public class ConditionCommon { - public static final String SPLIT = "_"; - - public static final Integer HOUR = 0; - public static final Integer DAY = 1; - public static final Integer MONTH = 2; - public static final Integer YEAR = 3; - - public static final String PROVINCE = "province"; - public static final String CITY = "city"; - - - // other - public static final String MEDIA_COUNTS = "mediaCounts"; - public static final String MEDIA_COUNTS_ALL = "mediaCountsALL"; - public static final String HOUR_COUNT_MAP = "hourCountMap"; - public static final String WORD_CLOUD = "wordCloud"; - public static final String PLACE_CLOUD = "placesCloud"; - public static final String HASH_TAG_CLOUD = "hashTagCloud"; - public static final String EMOJI_CLOUD = "emojiCloud"; - public static final String OPINION_CLOUD = "opinionsCloud"; - - - // weibo - public static final String VERIFIED_COUNTS = "verifiedCounts"; - public static final String SEX_COUNTS = "sexCounts"; - public static final String AGE_COUNT_MAP = "ageCountMap"; - public static final String WEIBO_COUNT = "weiboCount"; - - public static final String NORMAL = "常规"; - public static final String PROMOTION = "推广"; - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ESConstant.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ESConstant.java deleted file mode 100644 index a04334d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ESConstant.java +++ /dev/null @@ -1,663 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.util.constants; - -import com.bfd.mf.common.util.utility.EsQueryConditionUtils; -import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class ESConstant { - - - public static final String MEDIA_AREA_KEY = "dict"; - - public static final float BOOST_WEIGHT = 10f; - // 相似查询返回的最大数据量 - public static final Integer MAX_RESULT_WINDOWS_SIZE = 10000; - public static final Integer MAX_SCROLL_SIZE = 5000; - public static final Integer MAX_SCORLL_SIZE_CL = 2000; - public static final Long MAX_SEARCH_TIME_MINUTES = 2L; - public static final String SUBJECT_CLUSTER_INDEX_PREFIX = "mf_subject"; - public static final String ES_KEY = "es"; - public static final String ES_NORMAL_KEY = "es_normal"; - public static final String CACHE_KEY = "cache"; - public static final int BULK_SIZE = 100; - public static final String INDEX_TYPE = "docs"; - public static final String bigramPostfix = ".shingles"; - public static final String bigramKey = "bigram"; - public static final String filterTypeKey = "filter_type"; - public static final String queryTypeKey = "query_type"; - public static final Double aggOffset = 16 * 6 - * 60 * 1000d; - public static final Double ONE_DAY = 24 * 60 * 60 * 1000d; - public static final Double ONE_HOUR = 60 * 60 * 1000d; - - public static final String SENTIMENT = "sentiment"; - - public static final String SUMMARY = "summary"; - - - public static final String FILEPATH = "filePath"; - public static final String ISDOWNLOAD = "isDownload"; - public static final String VIDEOURL = "videoUrl"; - - /** - * * - * - * @FIXED 2017.11.13 increase the runtime,from 3 min to 6 min - */ - public static final long THREAD_TIME = 15 * 60 * 1000L; - - public static String DESC = "desc"; - - public static String ASC = "asc"; - - /** - * pubTime时间由远及近 - */ - public static String DEFUALT_SORT = "createdTimeDesc"; - - /** - * pubTime时间由远及近 - */ - public static String PUBTIME_ASC_SORT_FLAG = "timeAsc"; - -/** - * 评论数:commentDescFlag - 发帖时间:(近-远)timeDesc - 发帖时间:(远-近) timeAsc - 采集时间:crawlTimeDesc - */ - /** - * pubTime时间由近及远 - */ - public static String PUBTIME_DESC_SORT_FLAG = "timeDesc"; - public static String CRAWLTIME_DESC_SORT_FLAG = "crawlTimeDesc"; - - /** - * createTime时间由近及远 - */ - public static String CREATE_TIME_DESC_SORT_FLAG = "createdTimeDesc"; - - /** - * createTime时间由远及近 - */ - public static String CREATE_TIME_ASC_SORT_FLAG = "createdTimeAsc"; - - /** - * 重要度排序 - */ - public static String SCORE_DESC_SORT_FLAG = "scoreDesc"; - - /** - * Alexa - */ - public static String ALEXA_ASC_SORT_FLAG = "alexaAsc"; - /*** - * - */ - public static Float ALEXA_DEFAULT_SCORE = 1000000.00F; - /** - * 转载量排序 - */ - public static String FOLDER_NUMBER_DESC_SORT_FLAG = "folderNumberDescSortFlag"; - /** - * 综合排序:1:转载量排序;2:转载量一样按照得分排序;3:随后按照pubTime时间倒序 - */ - public static String REPORT_SORT_FLAG = "reportSortFlag"; - - public static String SCORE = "_score"; - public static String SCORE_FROM_SOURCE = "score"; - - - /** - * 关键词前缀 - */ - public static final String TAG_START = ""; - /** - * 关键词后缀 - */ - public static final String TAG_END = ""; - - /** - * 标题关键词分隔符 - */ - public static final String TITLE_KEYWORDS_SPLIT_SYSBOL = ","; - /** - * 相关度等级词分隔符 - */ - public static final String RELATEDWORDS_HIGH = "high"; - public static final String RELATEDWORDS_MEDIUM = "medium"; - public static final String RELATEDWORDS_LOW = "low"; - /** - * 相关度分级 - */ - public static final float RELATEDRATE_MIN = 0.00F; - public static final float RELATEDRATE_MAX = 1.00F; - public static final int RELATEDRATE_MIN_SEARCH_NUMBER = 10; - /** - * 排除关键词分隔符 - */ - public static final String EXCLUDE_KEYWORDS_SPLIT_SYSBOL = ","; - public static final String EXCLUDE_KEYWORDS_SPLIT_CN_SYSBOL = ","; - - - /** - * 最小匹配度 - */ - public static final Integer MINI_NUMBER_SHOULD_MATCH = 1; - /** - * 最大摘要长度 - */ - public static final Integer MAX_FRAGMENT_SIZE = 10000; - /** - * 数据监控页面摘要长度 - */ - public static final Integer MONITOR_FRAGMENT_SIZE = 110; - // 报告摘要长度 - public static final Integer Report_FRAGMENT_SIZE = 100; - public static final Integer Foreign_Report_FRAGMENT_SIZE = 200; - /** - * 数据监控页面标题高亮长度 - */ - public static final Integer MONITOR_FRAGMENT_TITLE_SIZE = 50; - /** - * 数据导出查询大集群分页查询,每次最大查询量 - */ - public static final Integer EXPORT_SCROLL_SIZE = 1000; - /** - * 自定义长度 - */ - // title 长度 - public static final Integer MONITOR_FRAGMENT_USER_DEFINED_TITLE_SIZE = 30; - // 系统报告自定义长度 40 - public static final Integer SYS_REPORT_FRAGMENT_USER_DEFINED_TITLE_SIZE = 40; - public static final Integer FOREIGN_SYS_REPORT_FRAGMENT_USER_DEFINED_TITLE_SIZE = 80; - - public static final Integer MAX_FRAGMENT_USER_DEFINED_TITLE_SIZE = 50; - - // 预警报告的摘要长度 - public static final Integer MONITOR_FRAGMENT_USER_DEFINED_DIGEST_SIZE = 150; - public static final String DEFAULT_JOIN_SYMBOL = "."; - /** - * 主体情感默认名称 - */ - public static final String DEFAULT_ENTRY_NAME = "default"; - public static final String EMOTION_ENTRY = "emotionEntry"; - public static final String EMOTION_VALUE = "emotionValue"; - public static final String EMOTION_NAME = "entryName"; - public static final String OFF_SET = "offSet"; - public static final String MINIMUM_SHOULD_MATCH = "1"; - /* - * docType(news\bbs...):int 类型常量 - */ - public static final int DOCTYPENEWS = 0; - public static final int DOCTYPEBBS = 1; - /* - * 组合查询语句key值类型 - */ - public static final String KEYTYPEOPERA = "operator"; - public static final String KEYTYPEWORD = "word"; - /* - * 数据来源渠道 (hl \ bfd) - */ - public static final String CHANNELHL = "HL"; - public static final String CHANNELBFD = "BFD"; - /* - *1:type:content、title、all - *2: text:words(目前要是关键词列表) - */ - public static final String SEARCH_SCOPE_TYPE_TITLE = "title"; - public static final String ICON = "icon"; - - public static final String SEARCH_SCOPE_TYPE_CONTENT = "content"; - - //标题+正文 - public static final String SEARCH_SCOPE_TYPE_TITLE_ALL = "title_all"; - - public static final String SEARCH_SCOPE_TYPE_AUTHOR = "author"; - - public static final String SEARCH_SCOPE_TYPE_FORWARD = "forwardContent"; - - public static final String SEARCH_SCOPE_TYPE_TITLE_ORIGIN = "title_origin"; - - public static final String SEARCH_SCOPE_TYPE_CONTENT_ORIGIN = "content_origin"; - - public static final String SEARCH_SCOPE_TYPE_ALL = "all"; - - public static final String SEARCH_SCOPE_WECHAT_SUBSCRIPTION = "wechat_subscription"; - - /** - * SQ 4.0新增 UGC EGC PGC - */ - public static final String SEARCH_SCOPE_UGC = "ugc"; - - public static final String SEARCH_SCOPE_EGC = "egc"; - - public static final String SEARCH_SCOPE_PGC = "pgc"; - /** - * 关键词 - */ - public static final String SEARCH_SCOPE_TYPE_KEYWORDS = "keyWords"; - - public static final String REL_TYPE = "relType"; - - public static final String PRIMARY_POST = "primaryPost"; - - public static final String PRIMARY = "primary"; - - public static final String PT_PRIMARY = "ptPrimary"; - - public static final String DT_PRIMARY = "dtPrimary"; - - public static final String PT_ALL = "ptAll.keyword"; - - public static final String DT_ALL = "dtAll.keyword"; - - public static final String DATA_COUNT = "dataCount"; - - /** - * 回溯开始时间 - */ - public static final String CON_START_TIME = "conStartTime"; - /** - * 回溯结束时间 - */ - public static final String CON_END_TIME = "conEndTime"; - public static final String SUBJECT_ID = "subjectId"; - /* - *1:非敏感 positive - *2:敏感 negative - */ - public static final String COMMON_TAG = "common"; - public static final String NEGATIVE_TAG = "negative"; - public static final String NEUTER_TAG = "neuter"; - - public static final Integer COMMON_TAG_VALUE = 1; - public static final Integer NEGATIVE_TAG_VALUE = 3; - public static final Integer NEUTER_TAG_VALUE = 2; - - public static final String COMMON_CN_TAG = "正面"; - public static final String NEGATIVE_CN_TAG = "负面"; - public static final String NEUTER_CN_TAG = "中性"; - - public static final String AVAILABILITY = "availability"; - - public static final List SENTIMENT_LIST = new ArrayList(); - public static String URL_HASH = "urlHash"; - - static { - SENTIMENT_LIST.add(COMMON_TAG); - SENTIMENT_LIST.add(NEGATIVE_TAG); - SENTIMENT_LIST.add(NEUTER_TAG); - } - - // 正面 [0.8-1] - // 中性(0.2-0.8) - // 负面 [0-0.2] - public static final Double SENTIMENTAL_MID = 0.8; - public static final Double SENTIMENTAL_THRESHOLD = 0.2; - public static final Double SENTIMENTAL_MIN = 0.0; - public static final Double SENTIMENTAL_MAX = 1.0; - public static final String OPERATOR_OR = "or"; - public static final String OPERATOR_EQUAL = "="; - public static final String OPERATOR_SPACE = " "; - public static final String OPERATOR_ALL = "*:*"; - public static final String OPERATOR_CONNENT_ALL = ":"; - public static final String OPERATOR_SINGLE_ALL = "*"; - - - /* - *define es mapping fields - */ - public static String PUBTIME = "pubTime"; - public static String CHANNEL_HYLANDA = "hylanda"; - - public static String PUBTIME_STR = "pubTimeStr"; - - public static String CREATETIME = "createTime"; - public static String CREATETIMESTR = "createTimeStr"; - public static String CREATETIMEDAY = "createDay"; - - public static String PUTTIME = "putTime"; - public static String CRAWLTIME = "crawlTime"; - public static String ORIGINAL_SOURCE = "originalSource"; - public static String CONTENT_SIMHASH = "contentSimHash"; - public static String QUOTE_COUNT = "quoteCount"; - /** - * 内容 - */ - public static String CONTENT_TAG = "contentTag"; - public static String DT_EN_2 = "dtEn2"; - public static String DT_EN_1 = "dtEn1"; - public static String COMMENTS_COUNT = "commentsCount"; - public static String PAGE_COMMENTS_COUNT = "pageCommentCount"; - public static String ATTITUDES_COUNT = "attitudesCount"; - public static String TITLE_SIMHASH = "titleSimHash"; - public static String ORIGINAL_CONTENT_SIMHASH = "originalContentSimHash"; - public static String ORIGINAL_TITLE_SIMHASH = "originalTitleSimHash"; - public static String DOC_TYPE = "docType"; - public static String CHINA_DOC_TYPE = "chinaDocType"; - public static String SYS_SENTIMENT_TAG = "sysSentimentTag"; - public static final String TITLE = "title"; - public static final String USER_LEVEL_NAME = "userLevelName"; - public static String SOURCE = "source"; - public static String CRAWLDATAFLAG= "crawlDataFlag"; - - //微信专属字段,内容固定 value="微信" - public static String WEIXIN_SOURCE = "weixinSource"; - public static String CHANNEL = "channel"; - public static final String CONTENT = "content"; - public static final String SYS_SENTIMENT = "sysSentiment"; - public static String POST_SOURCE = "postSource"; - /** - * DT情感标签 - */ - public static final String DT_SENTIMENT = "dtSentiment"; - /** - * PT情感标签 - */ - public static final String PT_SENTIMENT = "ptSentiment"; - - public static String URL = "url"; - public static String DOC_ID = "docId"; - public static String DATA_ID = "dataId"; - public static String _ID = "_id_"; - public static String SYS_ABSTRACT = "sysAbstract"; - public static String SYS_KEYWORDS = "sysKeywords"; - // 所有热词 - public static String HL_KEYWORDS = "hlKeywords"; - public static String ALL_KEYWORDS = "allKeywords"; - public static String COMMENT_KEY_WORDS = "commentKeywords"; - public static String OPTIONS = "opinions"; - // 地名:places - public static String PLACES = "places"; - // 微博话题:hashTag - public static String HASH_TAG = "hashTag"; - public static String PICTURE_LIST = "pictureList"; - - // 表情:expression - public static String EXPRESSION = "expression"; - // 评价:opinions - public static String OPINIONS = "opinions"; - - public static String WEIBO_AUTHOR = "author"; - public static String WEIBO_USER_ID = "userId"; - public static String AUTHOR = "author"; - public static String WEIXIN_NAME = "weixinName"; - public static final String CHANNEL_WEIXIN = "weixin"; - public static final String HL_DOCID = "hylandaDocId"; - public static final String LANGUAGE = "language"; - public static String AREA = "area"; - - - /** - * _all字段 - */ - public static String _ALL = "_all"; - - /** - * 口碑 - */ - public static final String SHOP_MD5 = "shopUrlHash"; - public static final String HAS_PICTURE = "isCommentImg"; - public static final String HAS_CONTENT = "isComment"; - public static final String CUSTOMER_LEVEL = "customerLevel"; - public static final String COMMENT_STAR_LEVEL = "starLevel"; - public static final String SHOP_NAME = "shopName"; - public static final String NICKNAME = "nickName"; - public static final String COMMENT_SEARCH_ALL = "comment_all"; - public static final String USER_AVATAR = "userAvatar"; - public static final String UNIQUE_ID = "uniqueId"; - public static final String SHOP_URL = "shopUrl"; - public static final String USER_URL = "userUrl"; - public static final String CONTRIBUTION = "contribution"; - public static final String SCORE_FACTOR = "scoreFactor"; - public static final String FACTOR_KEY = "factorKey"; - public static final String FACTOR_VALUE = "factorValue"; - public static final String CONTENT_SIZE = "commentLength"; - public static final String SHOP_LABEL = "label"; - public static final String SHOP_CITY = "shopCity"; - public static final String SHOP_PROVINCE = "shopProvince"; - public static final String USER_CITY = "userCity"; - public static final String COUNTRY = "country"; - public static final String USER_PROVINCE = "userProvince"; - public static final String SHOP_LABELS = "shopLabels"; - public static final String COMMENT_IMG = "commentImg"; - - /** - * 用户头像 - */ - public static String WEIBO_AVATOR = "avatar"; - public static final String SOCIAL = "social"; - public static final String BBS = "bbs";//论坛 - public static final String WEI_BO = "weibo";//微博 - public static final String WEI_XIN = "weixin";//微信 - public static final String CH_WEI_XIN = "微信"; - public static final String BLOG = "blog";//博客 - public static final String NEWS = "news";//网站 - public static final String TIEBA = "tieba";//贴吧 - public static final String MEDIA = "media";//报刊 - public static final String VIDEO = "video";//视频 - public static final String WENDA = "wenda";//问答 - public static final String SHEJIAO = "shejiao";// 社交 - public static final String APP = "app"; - public static String WEIBO_DEFAULT_AVATOR = "http://tva1.sinaimg.cn/default/images/default_avatar_male_180.gif"; - - public static final String BAIDUKOUBEI = "baidukoubei"; - public static final String DIANPING = "dianping"; - public static final String FANGTIANXIA = "fangtianxia"; - public static final String BAIDUTIEBA = "baidutieba"; - public static final String SOUHU = "souhu"; - public static final String XIECHENG = "xiecheng"; - public static final String AUTOHOME = "autohome"; - public static final String TMALL = "tmall"; - public static final String YILONG = "yilong"; - // 电商 - public static final String ITEM = "item"; - public static final String ITEM_NAME = "itemName"; - public static final String ZIXUN = "zixun"; - public static final String FOREIGN_NEWS = "foreign_news"; - public static final String FOREIGN_MEDIA = "foreign_media"; - //电商星级分数 - public static final String COMMENT_SCORE = "commentScore"; - // 电商数据没有星级时返回-1 - public static final Double COMMENT_SCORE_NULL = -1.0; - public static final String EN_SOURCE = "enSource"; - - //内容识别 - public static final String NORMAL = "normal"; - public static final String MARKETING = "marketing"; - - public static final String AVATAR = "avatar"; - public static final String COMMENT_ID = "commentId"; - - - /** - * 微博信息 added by Eric 2016-10-28 15:03:31 - */ - public static String WEIBO_USER_SEX = "sex";// 性别 female \ male - public static String WEIBO_USER_SEX_FEMALE = "female";// 性别 female - public static String WEIBO_USER_SEX_MALE = "male"; - - public static String WEIBO_USER_FRIENDS_COUNT = "friendsCount";// 关注数 - public static String WEIBO_USER_FANS_COUNT = "fansCount";// 粉丝数 - public static String WEIBO_ATTITUDES_COUNT = "attitudesCount";// 赞数 - public static String WEIBO_COMMENTS_COUNT = "commentsCount";// 评论数 - public static String WEIBO_QUOTE_COUNT = "quoteCount";// 转发数 - public static String WEIBO_COUNT = "weiboCount";//用户转发微博数量 - public static String WEIBO_LOCATION = "location";//用户转发微博数量 - public static String WEIBO_USER_COUNTRY = "country";// 国家 - public static String WEIBO_USER_PROVINCE = "province";// 省份 - public static String WEIBO_USER_CITY = "city";// 城市 verified - public static String WEIBO_USER_AREA = "area"; - public static String WEIBO_MUNICIPALITY_BEIJING = "北京"; - public static String WEIBO_MUNICIPALITY_TIANJIN = "天津"; - public static String WEIBO_MUNICIPALITY_CHONGQING = "重庆"; - public static String WEIBO_MUNICIPALITY_SHANGHAI = "上海"; - - public static String WEIBO_USER_VERIFIED = "verified";// 认证类型 - public static String WEIBO_USER_NOT_VERIFIED_VALUE = "0";// 非认证类型 - public static String WEIBO_ORIGINAL_URL = "originalUrl";// 上层url - public static String WEIBO_EXPRESSION = "expression";// 表情图 - public static String WEIBO_EXPRESSION_TEXT = "expressionText";// 表情文本 - public static String WEIBO_FORWARD_URL = "forwardUrl";// 原文url - public static String FORWARD_USER_URL = "forwardUserUrl";// 原文url - public static String WEIBO_USER_TYPE = "userType"; - public static String WEIBO_POST_SOURCE = "postSource"; - public static String WEIBO_LEVEL = "level"; - public static String WEIBO_REPLY_COMMENT = "replycomment"; - public static String PRODUCT_ID = "productId"; - - - /** - * 微博转发信息 - */ - public static final String FORWARD_CONTENT = "forwardContent"; // 转发原文内容 - public static final String FORWARD_RELEASE_DATE = "forwardReleaseDate"; // 转发原文发布时间 - public static final String FORWARD_AUTHOR = "forwardAuthor"; // 转发原文作者昵称 - - public static final String FORWARD_QUOTE_COUNT = "forwardQuoteCount"; - public static final String FORWARD_POST_SOURCE = "forwardPostSource"; - public static final String FORWARD_COMMENT_COUNT = "forwardCommentsCount"; - public static final String FORWARD_ATTITUDES_COUNT = "forwardAttitudesCount"; - public static final String FORWARD_URL = "forwardUrl"; - public static final String FORWARD_AVATAR = "forwardAvatar"; - public static final String FORWARD_USER_TYPE = "forwardUserType"; - public static final String FORWARD_PUBTIME = "forwardPubTime"; - - - public static final String FORWARD_FLAG = "forwardFlag"; // 转发、回帖标志 1(转发、回帖) 0(原贴) - - public static final int REGULAR_PUBTIME_QUERY = 0; - - public static final int REGULAR_PUBTIME_AND_CREATETIME_QUERY = 1; - - - public static final List TYPE_LIST = new ArrayList<>(); - - public static final List BACKEND_ANALYSIS_LIST = new ArrayList<>(); - - public static final List BACKEND_AVAILABILITY_LIST = new ArrayList<>(); - - - public static final List APP_TYPE_LIST = new ArrayList(); - - - /** - * 口碑评价对应渠道类型 - */ - public static final List ITEM_TYPE_LIST = new ArrayList(); - - private static final String MEITUAN = "meituan"; - - private static final String DIAPING = "dianping"; - - public static final String ID = "id"; - - public static final String COMMENTS = "comments"; - - public static final String REPOSTS = "reposts"; - - public static final String ATTITUDES = "attitudes"; - - public static final Map SORT_FLAG_MAPPING_MYSQL_SORT = new HashMap<>(); - - public static final String[] FIELD_LIST_MONITOR_NORMAL = EsQueryConditionUtils.getIncludeQueryField(ESConstant.CONTENT_SIMHASH - , ESConstant.TITLE_SIMHASH - , ESConstant.TITLE - , ESConstant.AUTHOR - , ESConstant.CONTENT - , ESConstant.SOURCE - , ESConstant.PUBTIME - , ESConstant.DOC_TYPE - , ESConstant.CHANNEL - , ESConstant.URL - , ESConstant.SYS_SENTIMENT - , ESConstant.DOC_ID - , ESConstant.DATA_ID - , ESConstant.SYS_ABSTRACT - , ESConstant.COMMENT_SCORE - , ESConstant.ATTITUDES_COUNT - , ESConstant.COMMENT_ID - , ESConstant.COMMENTS_COUNT - , ESConstant.CRAWLTIME - , ESConstant.ISDOWNLOAD - , ESConstant.FILEPATH - , ESConstant.VIDEOURL); - - // ID 查询字段 - public static final String[] FIELD_ID_LIST = { - ESConstant.DATA_ID, - ESConstant.DOC_ID}; - - public static final String[] FIELD_DATA = EsQueryConditionUtils.getIncludeQueryField( - ESConstant.AVATAR , - ESConstant.AUTHOR, - ESConstant.DOC_ID , - ESConstant.PUBTIME , - ESConstant.SOURCE , - ESConstant.URL , - ESConstant.QUOTE_COUNT , - ESConstant.COMMENTS_COUNT , - ESConstant.ATTITUDES_COUNT , - ESConstant.TITLE , - ESConstant.CONTENT , - ESConstant.CHANNEL , - ESConstant.DOC_TYPE , - ESConstant.CRAWLTIME , - ESConstant.SYS_SENTIMENT); - - // 总体分析要用的字段 - public static final String[] FIELD_LIST_ANALYSIS = - EsQueryConditionUtils.getIncludeQueryField(ESConstant.PUBTIME - , ESConstant.CRAWLTIME - , ESConstant.TITLE_SIMHASH - , ESConstant.SCORE_FROM_SOURCE - , ESConstant.DOC_ID - , ESConstant.DOC_TYPE - , ESConstant.HL_KEYWORDS - , ESConstant.SOURCE - , ESConstant.SYS_SENTIMENT - , ESConstant.CONTENT_TAG - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_NAME - , ESConstant.EMOTION_ENTRY + ESConstant.DEFAULT_JOIN_SYMBOL + ESConstant.EMOTION_VALUE - ); - - - // 词云查询字段 - public static final String[] FIELD_CLOUD_ANALYSIS= EsQueryConditionUtils.getIncludeQueryField( - // 所有 - ESConstant.HL_KEYWORDS - // 地名 - , ESConstant.PLACES - // 话题 - , ESConstant.HASH_TAG - // 评价 - , ESConstant.OPINIONS - // 表情 - , ESConstant.EXPRESSION - // ID - , ESConstant.DOC_ID - ); - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ScoreFactorEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ScoreFactorEntity.java deleted file mode 100644 index 2a05013..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/constants/ScoreFactorEntity.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.bfd.mf.common.util.constants; - -import java.io.Serializable; - -/** - * Created by Changquanyou on 2017/7/12. - * some scores of the factor - */ - -public class ScoreFactorEntity implements Serializable { - private static final long serialVersionUID = 2322127803773558957L; - /**Es 默认文档评分*/ - private Float tfidfScore; - - /**相似文章量得分*/ - private Float similarityNumber; - - /**情感标签得分*/ - private Double sentimentScore; - - /**网站排名得分*/ - private Float alexaScore; - - /**渠道得分*/ - private Float channelScore; - - public Float getTfidfScore() { - return tfidfScore; - } - - public void setTfidfScore(Float tfidfScore) { - this.tfidfScore = tfidfScore; - } - - public Float getSimilarityNumber() { - return similarityNumber; - } - - public void setSimilarityNumber(Float similarityNumber) { - this.similarityNumber = similarityNumber; - } - - public Double getSentimentScore() { - return sentimentScore; - } - - public void setSentimentScore(Double sentimentScore) { - this.sentimentScore = sentimentScore; - } - - public Float getAlexaScore() { - return alexaScore; - } - - public void setAlexaScore(Float alexaScore) { - this.alexaScore = alexaScore; - } - - public Float getChannelScore() { - return channelScore; - } - - public void setChannelScore(Float channelScore) { - this.channelScore = channelScore; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/CacheEnums.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/CacheEnums.java deleted file mode 100644 index 80fbddd..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/CacheEnums.java +++ /dev/null @@ -1,308 +0,0 @@ -package com.bfd.mf.common.util.enums; - - -public class CacheEnums { - public enum TaskEventType { - change_doc(0, "doc变更"), - change_subject(1, "话题变更"), - change_cache_swich(2, "开启/关闭缓存开关"), - change_display_duration(3, "修改最大显示时长"), - change_white_list(4, "白名单变更"), - change_trace_back_duration(5, "修改创建之日起最大追溯时长"); - - private int code; - private String name; - TaskEventType(int code, String name) { - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskEventType getByCode(int code) { - for (TaskEventType taskEventType : TaskEventType.values()) { - if (taskEventType.getCode().equals(code)) { - return taskEventType; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum TaskBatchType { - regular(0, "定时"), - rebuild(1, "重构"), - recover(2, "恢复"); - - private int code; - private String name; - TaskBatchType(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskBatchType getByCode(int code) { - for (TaskBatchType taskBatchType : TaskBatchType.values()) { - if (taskBatchType.getCode().equals(code)) { - return taskBatchType; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum TaskOperation { - delete(0, "删除"), - create(1, "创建"), - update(2, "修改"); - - private int code; - private String name; - TaskOperation(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskOperation getByCode(int code) { - for (TaskOperation taskOperation : TaskOperation.values()) { - if (taskOperation.getCode().equals(code)) { - return taskOperation; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum CacheSwitch { - close(0, "关闭"), - open(1, "开启"), - closeAndSearch(2, "关闭缓存且直接查询数据"); - - private int code; - private String name; - CacheSwitch(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static CacheSwitch getByCode(int code) { - for (CacheSwitch cacheSwitch : CacheSwitch.values()) { - if (cacheSwitch.getCode().equals(code)) { - return cacheSwitch; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum CacheRecalculateStatus { - stable(0, "稳定"), - rebuild(1, "重构"); - - private int code; - private String name; - CacheRecalculateStatus(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static CacheRecalculateStatus getByCode(int code) { - for (CacheRecalculateStatus cacheRecalculateStatus : CacheRecalculateStatus.values()) { - if (cacheRecalculateStatus.getCode().equals(code)) { - return cacheRecalculateStatus; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum CacheRefreshStatus { - stable(0, "稳定"), - rebuild(1, "重构"); - - private int code; - private String name; - CacheRefreshStatus(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static CacheRefreshStatus getByCode(int code) { - for (CacheRefreshStatus cacheRefreshStatus : CacheRefreshStatus.values()) { - if (cacheRefreshStatus.getCode().equals(code)) { - return cacheRefreshStatus; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum UpdateSubject { - no(0, "不更新"), - yes(1, "更新"); - - private int code; - private String name; - UpdateSubject(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static UpdateSubject getByCode(int code) { - for (UpdateSubject updateSubject : UpdateSubject.values()) { - if (updateSubject.getCode().equals(code)) { - return updateSubject; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public static final Integer UpdateSubjectNumLeft = 60; - - public enum TaskSubjectStatus{ - kill(-2, "杀死"), - fail(-1, "失败"), - processing(0, "进行中"), - success(1, "成功"), - recover(2, "已恢复"); - - private int code; - private String name; - TaskSubjectStatus(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskSubjectStatus getByCode(int code) { - for (TaskSubjectStatus taskSubjectStatus : TaskSubjectStatus.values()) { - if (taskSubjectStatus.getCode().equals(code)) { - return taskSubjectStatus; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum TaskHandle { - no(0, "不处理"), - yes(1, "需处理"); - - private int code; - private String name; - TaskHandle(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskHandle getByCode(int code) { - for (TaskHandle taskHandle : TaskHandle.values()) { - if (taskHandle.getCode().equals(code)) { - return taskHandle; - } - } - throw new IllegalArgumentException("code error"); - } - } - - public enum TaskBatchStage{ - undo(-1, "未执行"), - start(0, "开始执行"), - childrenCreate(1, "开始创建子任务"), - childrenFinish(2, "创建子任务完毕"); - - private int code; - private String name; - TaskBatchStage(int code, String name){ - this.code = code; - this.name = name; - } - - public Integer getCode() { - return code; - } - - public String getName() { - return name; - } - - public static TaskBatchStage getByCode(int code) { - for (TaskBatchStage taskBatchStage : TaskBatchStage.values()) { - if (taskBatchStage.getCode().equals(code)) { - return taskBatchStage; - } - } - throw new IllegalArgumentException("code error"); - } - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/DataExportStatus.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/DataExportStatus.java deleted file mode 100644 index 074b16f..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/DataExportStatus.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.util.enums; - - -public enum DataExportStatus { - INIT(0, "Initial", "等待处理"), - PROCESSING(1, "Processing", "处理中"), - FAIL(2, "Failed", "处理失败"), - SUCCESS(3, "Success", "完成"), - NODATA(4, "NoData", "暂无数据"), - UNKNOWN(-1, "Unknown", "未知错误"); - - private int code; - private String desc, locale; - - DataExportStatus(int code, String desc, String locale) { - this.code = code; - this.desc = desc; - this.locale = locale; - } - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public String getDesc() { - return desc; - } - - public void setDesc(String desc) { - this.desc = desc; - } - - public String getLocale() { - return locale; - } - - public void setLocale(String locale) { - this.locale = locale; - } - - public static DataExportStatus getStatusByCode(int code) { - switch (code) { - case 0: - return INIT; - case 1: - return PROCESSING; - case 2: - return FAIL; - case 3: - return SUCCESS; - case 4: - return NODATA; - default: - return UNKNOWN; - } - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/RTCodeEnum.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/RTCodeEnum.java deleted file mode 100644 index 0535f50..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/RTCodeEnum.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.bfd.mf.common.util.enums; - -import com.alibaba.fastjson.JSONObject; - -public enum RTCodeEnum { - - C_OK(0, "OK"), // - C_DONE(1, "Done"), // - C_FAIL(-1, "Failed"), - /** - * ES Index - */ - C_INDEX_EXISTS(-3, "Index Exists"), - // 自定义状态码 - C_TOPIC_DISABLED(-2, "话题渠道为空,请运营人员确注意操作!!!"), - // Param Issue: 3** - C_PARAM_ERROR(300, "Input Param Error"), - - C_TOKEN_ERROR(301, "Token Validation Error"), - - C_CAPTCHA_ERROR(302, "验证码错误,请重试"), - - C_APPLY_DUPLICATION(303, "申请试用信息已存在, 请不要重复提交"), - - C_UNBIND(304, "微信账号未绑定"), - - C_STATE_EXIST(305, "请勿重复请求"), - // Data Issue: 4** - C_NO_DATA_FOUND(400, "No Data Found"), - - C_DATA_ERROR_PAGETIME_EXPIRE(401, "页面超时不可用,请刷新重试"), - - // System Service Issue: 5** - C_SERVICE_NOT_AVAILABLE(500, "系统服务不可用,请联系管理员"), - - C_BIZ_IMPACT_DAYS_NOT_SUPPRTTED(601, "Impact days not supported, we only support for 1,5,10,20 for free"), - - C_SUBJECT_GRAMMAR_NOT_SUPPRTTED(701, "语法错误,请修改"), - - C_SUBJECT_GRAMMAR_EXPERTKEY_WORD(913, "关键词不允许超过50个"), - - // Eric added @2016年11月02日15:27:10 - C_SUBJECT_DEFINITION_NOT_ACCURATE(702, "请不要设置过于宽泛的关键词组合, 这样会采集过多不相关的文章"), - - C_SUBJECT_ZERO_GRAMMAR_NOT_SUPPRTTED(703, "该语法查询不到内容,请精确查询意图"), - - C_SUBJECT_MORE_GRAMMAR_NOT_SUPPRTTED(704, "语法配置过于宽泛,请精确查询意图"), - - - C_PERMISSION_ERROR_USER_RANOUT(801, "用户数量达到最大限制, 请联系管理员升级权限"), - - C_PERMISSION_ERROR_TOPIC_RANOUT(802, "话题数量超过限制, 请联系客服人员处理"), - - C_PERMISSION_ERROR_LOGIN_FAIL(803, "用户名或密码不正确,请重新登录"), - - C_PERMISSION_ERROR_COMPANY_EXPIRE(804, "客户账号已过期或不可用,请联系管理员"), - - C_PERMISSION_ERROR_SENDTIME_EXPIRE(805, "发送时间超过限制不可用,请修改发送时间"), - - C_PERMISSION_ERROR_SCREEN_RANOUT(806, "屏蔽数量达到最大限制, 请联系管理员升级权限"), - - C_PERMISSION_ERROR_CODE_EXPIRE(807, "code已过期或不可用"), - - C_PERMISSION_ERROR_SHOPURL_RANOUT(808, "用户url数量达到最大限制, 请联系管理员升级权限"), - - C_PERMISSION_ERROR_COMMENT_CLOSED(809, "客户账号口碑功能未开启,请联系管理员"), - C_COMPANY_DEADLINE(909, "客户过期!"), - - - C_UPLOAD_IMG_FAIL(901, "上传失败"), - - C_VALID_PASSWORD_ERROR(904, "原始密码错误"), - C_USER_PERMSSION_ERROR(908, "当前账号无任何权限,请联系管理员"), - C_USER_STATUS_ERROR(910, "用户被禁用,请联系管理员"), - - C_KEYWORD_LIMIT(902, "关键词不能大于客户配置词数!"), - C_EXCLUDE_LIMIT(903, "排除词不能大于客户配置词数!"), - - C_LACK_SPREADNUM(904, "剩余转发数不足,请与工作人员联系!"), - C_WEIBO_CRAWL_ERR(905, "加载失败,请检查该微博是否被删除!"), - C_WEIBO_URL_ERR(906, "微博链接不符合规范!"), - C_FAVOUR_NUMBER_ERR(907, "数量超过阈值限制"), - C_WEIBO_TOTAL_COUNT(908, "本帖转发和评论量超过100000条,请更换其他转评量和评论量小于100000的帖子。"), - C_ACCOUNT_NICK_NAME(911, "该账号已存在,不能重复添加"), - C_ACCOUNT_NO_NICK_NAME(912, "该用户昵称不存在"); - - - private int code; - private String desc; - - - RTCodeEnum(int code, String desc) { - this.code = code; - this.desc = desc; - } - - public JSONObject toJSON() { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("code", code); - jsonObject.put("desc", desc); - return jsonObject; - } - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public String getDesc() { - return desc; - } - - public void setDesc(String desc) { - this.desc = desc; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/SpreadEnums.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/SpreadEnums.java deleted file mode 100644 index fcdcaad..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/enums/SpreadEnums.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.bfd.mf.common.util.enums; - -import java.util.HashSet; -import java.util.Set; - -/** - * Created by Shang Gaohui on 2017/5/31. - */ -public class SpreadEnums { - - - - public static class TREND { - public static final Integer HOUR_LIMIT = 48; - - public static final Integer UNIT_HOUR = 0; - public static final Integer UNIT_DAY = 1; - public static final Integer PERIOD_NUM = 10; - } - - public static class LIST { - public static final Integer PAGE_DEFAULT_NUM = 20; - public static final String KEY_PREFIX = "spread_list_"; - public static final Long EXPIRE_TIME = 24 * 60 * 60 * 1000L; - public static final String SPREAD_FIELD_PUBTIME = "pubTime"; - public static final String SPREAD_FIELD_CRAWLTIME = "crawlTime"; - public static final String SPREAD_FIELD_DOCID = "docId"; - } - - public enum LIST_TYPE { - similar(0, "相似"), - accurate(1, "精确"); - private Integer code; - private String value; - - LIST_TYPE(Integer code, String value) { - this.code = code; - this.value = value; - } - - public String getValue() { - return value; - } - - public Integer getCode() { - return code; - } - } - - public enum SEARCH_TYPE { - title(0, "标题"), - source(1, "来源"), - originalSource(2, "转载出处"); - private Integer code; - private String value; - - SEARCH_TYPE(Integer code, String value) { - this.code = code; - this.value = value; - } - - public String getValue() { - return value; - } - - public Integer getCode() { - return code; - } - } - - public enum SORT_TYPE { - PUBTIME_DESC_SORT_FLAG("timeDesc"), - PUBTIME_ASC_SORT_FLAG("timeAsc"); - - private String value; - - SORT_TYPE(String value) { - this.value = value; - } - - public String getValue() { - return value; - } - } - - public static class OriginalSource { - public static final Set illegal = new HashSet() {{ - add("null"); - add("未知"); - add("其他"); - add("其它"); - add("其它的"); - add("互联网"); - add("来源于网络"); - add("来源于互联网"); - add("无"); - }}; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorConstant.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorConstant.java deleted file mode 100644 index 8b3566b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorConstant.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.bfd.mf.common.util.es; - -import com.bfd.mf.common.util.constants.ESConstant; - -import java.util.HashMap; -import java.util.Map; - -public class MonitorConstant { - - /** - * 报告数目 - */ - public static final int SHOW_REPORT_NUM = 21; - - /*** - * 情感中英文对照 - */ - public static Map emotionEngMaps() { - Map maps = new HashMap<>(); - maps.put(ESConstant.NEGATIVE_TAG, ESConstant.NEGATIVE_CN_TAG); - maps.put(ESConstant.COMMON_TAG, ESConstant.COMMON_CN_TAG); - return maps; - } - - public static Map emotionEngByThresholdMaps() { - Map maps = new HashMap<>(); - maps.put(ESConstant.SENTIMENTAL_MIN + "-" + ESConstant.SENTIMENTAL_THRESHOLD, ESConstant.NEGATIVE_CN_TAG); - maps.put(ESConstant.SENTIMENTAL_MID + "-" + ESConstant.SENTIMENTAL_MAX, ESConstant.COMMON_CN_TAG); - maps.put(ESConstant.SENTIMENTAL_THRESHOLD + "-" + ESConstant.SENTIMENTAL_MID, ESConstant.NEUTER_CN_TAG); - return maps; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorUtils.java deleted file mode 100644 index c072a66..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/MonitorUtils.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.bfd.mf.common.util.es; - -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorBaseEntity; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.search.SearchHit; -import org.elasticsearch.search.SearchHits; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -public class MonitorUtils { - - private static final String SPLIT = "_"; - private static Logger logger = LoggerFactory.getLogger(MonitorUtils.class); - - public static ESMonitorBaseEntity buildESMonitorListEntity(String dataId) { - ESMonitorBaseEntity esMonitorBaseEntity = new ESMonitorBaseEntity(); - esMonitorBaseEntity.setDataId(dataId); - return esMonitorBaseEntity; - } - - public static void parseTimeSeries( - SearchResponse scrollResponse, - Map docIdWithAreaMap, - Map esMonitorEntityMap) { - if (null != scrollResponse) { - SearchHits hits = scrollResponse.getHits(); - SearchHit[] searchHists = hits.getHits(); - for (SearchHit searchHit : searchHists) { - if (null != searchHit.getSourceAsMap().get(ESConstant.DATA_ID)) { - String dataId = searchHit.getSourceAsMap().get(ESConstant.DATA_ID).toString(); - if(docIdWithAreaMap.containsKey(dataId)){ - docIdWithAreaMap.put(dataId, 2); - }else { - docIdWithAreaMap.put(dataId, 1); - } - ESMonitorBaseEntity esMonitorBaseEntity = MonitorUtils.buildESMonitorListEntity(dataId); - esMonitorEntityMap.put(dataId, esMonitorBaseEntity); - }else{ - System.out.println("[MonitorUtils] ??? : "+searchHit.getSourceAsMap().toString()); - } - } - } - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java deleted file mode 100644 index e8c0c0b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java +++ /dev/null @@ -1,177 +0,0 @@ -package com.bfd.mf.common.util.slice; - -import com.bfd.mf.common.service.es.ClusterService; -import com.bfd.mf.common.thread.SubjectQueryDataService; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import com.bfd.mf.config.BFDApiConfig; -import com.bfd.mf.service.SearchDataService; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.search.SearchHit; -import org.elasticsearch.search.SearchHits; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.*; -import java.util.stream.Collectors; - -@Component -public class SliceScrollUtil { - private static final Logger logger = LoggerFactory.getLogger(SliceScrollUtil.class); - @Autowired - private ClusterService clusterService; - @Autowired - private SubjectQueryDataService subjectQueryDataService; - - private Object existHighEm(String str) { - if (TStringUtils.isNotEmpty(str)) { - if (str.contains("") || str.contains("")) { - return str; - } - } - return ""; - } - /** - * 解析数据 - */ - private void parseEsData(SearchResponse searchResponse, List list) { - if (searchResponse != null) { - logger.info("[SliceScrollUtil] parseEsData : "); - SearchHits hits = searchResponse.getHits(); - SearchHit[] searchHists = hits.getHits(); - for (SearchHit searchHit : searchHists) { - ESMonitorEntity esMonitorBaseEntity = new ESMonitorEntity(); - Map sourceAsMap = searchHit.getSourceAsMap(); - esMonitorBaseEntity.setDocId((String) sourceAsMap.get(ESConstant.DOC_ID)); - if(sourceAsMap.containsKey(ESConstant.DOC_TYPE)) { - esMonitorBaseEntity.setDocType((String) sourceAsMap.get(ESConstant.DOC_TYPE)); - } - if(sourceAsMap.containsKey(ESConstant.PUBTIME)) { - esMonitorBaseEntity.setPubTime(Long.valueOf(sourceAsMap.get(ESConstant.PUBTIME).toString())); - } - if(sourceAsMap.containsKey(ESConstant.SOURCE)) { - esMonitorBaseEntity.setSource((String) sourceAsMap.get(ESConstant.SOURCE)); - } - if(sourceAsMap.containsKey(ESConstant.URL)) { - esMonitorBaseEntity.setUrl((String) sourceAsMap.get(ESConstant.URL)); - } - if(sourceAsMap.containsKey(ESConstant.URL_HASH)) { - esMonitorBaseEntity.setUrlHash((String) sourceAsMap.get(ESConstant.URL_HASH)); - } - if(sourceAsMap.containsKey(ESConstant.AVATAR)){ - esMonitorBaseEntity.setAvatar(String.valueOf(sourceAsMap.getOrDefault(ESConstant.AVATAR, ""))); - } - if(sourceAsMap.containsKey(ESConstant.CRAWLTIME)) { - esMonitorBaseEntity.setCrawlTime(Long.valueOf(sourceAsMap.get(ESConstant.CRAWLTIME).toString())); - if ("null".equalsIgnoreCase(String.valueOf(sourceAsMap.get(ESConstant.CRAWLTIME)))) { - esMonitorBaseEntity.setCrawlTime(Long.valueOf(sourceAsMap.get(ESConstant.PUBTIME).toString())); - } - } - if(sourceAsMap.containsKey(ESConstant.AUTHOR)) { - esMonitorBaseEntity.setAuthor(String.valueOf(sourceAsMap.get(ESConstant.AUTHOR))); - } - if(sourceAsMap.containsKey(ESConstant.POST_SOURCE)) { - esMonitorBaseEntity.setPostSource(Optional.ofNullable((String) sourceAsMap.get(ESConstant.POST_SOURCE)).orElse("")); - } - if(sourceAsMap.containsKey(ESConstant.ATTITUDES_COUNT)) { - esMonitorBaseEntity.setAttitudesCount(sourceAsMap.get(ESConstant.ATTITUDES_COUNT).toString()); - } - if(sourceAsMap.containsKey(ESConstant.QUOTE_COUNT)) { - esMonitorBaseEntity.setQuoteCount(getCountForEsParams(sourceAsMap.get(ESConstant.QUOTE_COUNT), sourceAsMap.get(ESConstant.DOC_ID))); - } - if(sourceAsMap.containsKey(ESConstant.SYS_SENTIMENT)) { - esMonitorBaseEntity.setSysSentiment(Double.valueOf(sourceAsMap.get(ESConstant.SYS_SENTIMENT).toString())); - } - if(sourceAsMap.containsKey(ESConstant.COMMENT_ID)) { - esMonitorBaseEntity.setCommentId((String) sourceAsMap.getOrDefault(ESConstant.COMMENT_ID, "")); - } - if(sourceAsMap.containsKey(ESConstant.AVAILABILITY)) { - esMonitorBaseEntity.setAvailability((Integer) sourceAsMap.get(ESConstant.AVAILABILITY)); - } - if(sourceAsMap.containsKey(ESConstant.PICTURE_LIST)) { - esMonitorBaseEntity.setPictureList((List) sourceAsMap.getOrDefault(ESConstant.PICTURE_LIST, new ArrayList<>())); - } - try { - esMonitorBaseEntity.setHlKeyWords((List) sourceAsMap.getOrDefault(ESConstant.HL_KEYWORDS, new ArrayList<>())); - } catch (Exception e) { - esMonitorBaseEntity.setHlKeyWords(new ArrayList<>()); - } - - esMonitorBaseEntity.setPlaces((List) sourceAsMap.getOrDefault(ESConstant.PLACES, new ArrayList<>())); - esMonitorBaseEntity.setExpression((List) sourceAsMap.getOrDefault(ESConstant.EXPRESSION, new ArrayList<>())); - esMonitorBaseEntity.setHashTag((List) sourceAsMap.getOrDefault(ESConstant.HASH_TAG, new ArrayList<>())); - esMonitorBaseEntity.setOpinions((List) sourceAsMap.getOrDefault(ESConstant.OPINIONS, new ArrayList<>())); - - - - list.add(esMonitorBaseEntity); - } - } - } - - public Integer getCountForEsParams(Object o1, Object o2) { - if (TObjectUtils.isNull(o1) || o1.equals("")) { - if (ESConstant.WEI_BO.equals(o2.toString()) || ESConstant.ITEM.equals(o2.toString())) { - return 0; - } - return 0; - } else { - return Integer.valueOf(o1.toString().replaceAll(" ", "")); - } - } - - - - public List fetchResultSubjectCache(QueryRequest queryRequest,String[] fieldList) { - List jsonObjectList = new ArrayList<>(); - long calculateStartTime = System.currentTimeMillis(); - Cluster cluster = null; - List currentIndexList = null; - if(null != queryRequest.getSubjectId()){ - System.out.println("subjectId = " + queryRequest.getSubjectId()); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111 - currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId()); - }else{ - logger.info("[SearchKeywordsCouldService] dataAnalysisCloud : 查询 全局数据"); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.normal_cluster_type); // 109 - currentIndexList = subjectQueryDataService.getIndexListByTimeRange(cluster, queryRequest.getStartTime(),queryRequest.getEndTime()); - } - - Long clusterId = cluster.getId(); - logger.info("[SearchKeywordsCouldService] dataAnalysisCloud : queryDataList clusterId = " + clusterId + " ; currentIndexList :" + currentIndexList.toString()); - - logger.info("==========进入数据分析Es and Cache,计算开始执行============"); - try { - List responseList = new ArrayList<>(); - List searchResponseEsList =subjectQueryDataService.fetchResponseDataFromCache( - queryRequest, - clusterId, - currentIndexList, - fieldList); - - if (Optional.ofNullable(searchResponseEsList).isPresent()) { - responseList.addAll(searchResponseEsList); - parseResponseList(jsonObjectList, responseList); - } - logger.info("==========进入数据分析Es and Cache,计算结束执行,消耗时长为:{}============", System.currentTimeMillis() - calculateStartTime); - } catch (Exception e) { - e.printStackTrace(); - } - return jsonObjectList.stream().distinct().collect(Collectors.toList()); - } - - public void parseResponseList(List jsonObjectList, List responseList) { - for (SearchResponse searchResponse : responseList) { - // 解析数据 - parseEsData(searchResponse, jsonObjectList); - } - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/spread/SpreadServiceUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/spread/SpreadServiceUtil.java deleted file mode 100644 index 20605eb..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/spread/SpreadServiceUtil.java +++ /dev/null @@ -1,334 +0,0 @@ -package com.bfd.mf.common.util.spread; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.enums.SpreadEnums; -import com.bfd.mf.common.util.utility.DateUtil; -import com.bfd.nlp.common.util.object.TObjectUtils; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class SpreadServiceUtil { - private static final Logger logger = LoggerFactory.getLogger(SpreadServiceUtil.class); - - private static final Long ONE_DAY = 24 * 60 * 60 * 1000L; - private static final Long ONE_HOUR = 60 * 60 * 1000L; -// static { -// try { -// while (!ApplicationUtil.initialFinsih) { -// logger.warn("[SpreadServiceUtil Initial] AbsSpringServiceHolder: Wait spring content initialization, sleep 1s..."); -// Thread.sleep(1000); -// } -// -// oemUrlCommonService = ApplicationUtil.getApplicationContext().getBean(OemUrlCommonService.class); -// bfdApiConfig = ApplicationUtil.getApplicationContext().getBean(BFDApiConfig.class); -// -// if (TObjectUtils.isNull(oemUrlCommonService)) { -// throw new Exception("oemUrlCommonService is null"); -// } -// -// } catch (Exception e) { -// logger.error("[SpreadServiceUtil Initial] Object {} is NULL", e.getMessage(), e); -// System.exit(-1); -// } -// } - - /** - * 获取三个月前的起始时间 - */ - public static Long getTimeOfThreeMonthsAgo(Long time) { - if (TObjectUtils.isNull(time)) { - time = System.currentTimeMillis(); - } - - Date endDate = new Date(time); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(endDate); - calendar.add(Calendar.MONTH, -3); - calendar.set(Calendar.DAY_OF_MONTH, 1); - calendar.set(Calendar.HOUR_OF_DAY, 0); - calendar.set(Calendar.MINUTE, 0); - calendar.set(Calendar.SECOND, 0); - calendar.set(Calendar.MILLISECOND, 0); - logger.info("[SpreadServiceUtil] getTimeOfThreeMonthsAgo: result is {}", calendar.getTime()); - return calendar.getTimeInMillis(); - } - - private static Long getEndTime(Long time, Integer type) { - Long startTime; - if (type.equals(SpreadEnums.TREND.UNIT_HOUR)) { - startTime = getEndTimeOfHour(time); - } else { - startTime = getEndTimeOfDay(time); - } - return startTime; - } - - private static Long getEndTimeOfDay(Long time) { - Calendar calendar = Calendar.getInstance(); - calendar.setTimeInMillis(time); - calendar.set(Calendar.HOUR_OF_DAY, 23); - calendar.set(Calendar.MINUTE, 59); - calendar.set(Calendar.SECOND, 59); - calendar.set(Calendar.MILLISECOND, 999); - return calendar.getTimeInMillis(); - } - - private static Long getEndTimeOfHour(Long time) { - Calendar calendar = Calendar.getInstance(); - calendar.setTimeInMillis(time); - calendar.set(Calendar.MINUTE, 59); - calendar.set(Calendar.SECOND, 59); - calendar.set(Calendar.MILLISECOND, 999); - return calendar.getTimeInMillis(); - } - - public static Long[] getTimeList1(Long startTime, Long endTime, Integer type) { - Long[] timeList = null; - try { - Long interval; - if (type.equals(SpreadEnums.TREND.UNIT_HOUR)) { - interval = ONE_HOUR; - } else if (type.equals(SpreadEnums.TREND.UNIT_DAY)) { - interval = ONE_DAY; - } else { - throw new Exception(" !!! type is illegal !!!"); - } - Double intervalNum = Math.ceil((endTime - startTime) / (double) interval); - timeList = new Long[intervalNum.intValue() + 1]; - Long time = startTime; - for (int i = 0; i < intervalNum.intValue(); i++) { - timeList[i] = time; - time += interval; - } - timeList[intervalNum.intValue()] = endTime; - - logger.info("[SpreadServiceUtil] getTimeList: startTime is {}, endTime is {}, timeList is {}", startTime, endTime, timeList); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] getTimeList: failed, startTime is {}, endTime is {}, timeList is {}, error is ", startTime, endTime, timeList, e); - } - return timeList; - } - - public static Long[] getTimeList2(Long startTime, Long endTime, Integer type) { - Long[] timeList = null; - try { - Long interval; - if (type.equals(SpreadEnums.TREND.UNIT_HOUR)) { - interval = ONE_HOUR; - } else if (type.equals(SpreadEnums.TREND.UNIT_DAY)) { - interval = ONE_DAY; - } else { - throw new Exception(" !!! type is illegal !!!"); - } - - List timeListTemp = new ArrayList<>(); - timeListTemp.add(startTime); - - if (startTime.equals(endTime)) { - timeList = new Long[timeListTemp.size()]; - return timeListTemp.toArray(timeList); - } - - Long endTimeOfStart = getEndTime(endTime, type); - if (endTimeOfStart >= endTime) { - timeListTemp.add(endTime); - timeList = new Long[timeListTemp.size()]; - return timeListTemp.toArray(timeList); - } - for (long time = endTimeOfStart + interval; time < endTime; time += interval) { - timeListTemp.add(time); - } - timeListTemp.add(endTime); - timeList = new Long[timeListTemp.size()]; - timeListTemp.toArray(timeList); - - logger.info("[SpreadServiceUtil] getTimeList: startTime is {}, endTime is {}, timeList is {}", startTime, endTime, timeList); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] getTimeList: failed, startTime is {}, endTime is {}, timeList is {}, error is ", startTime, endTime, timeList, e); - } - return timeList; - } - - /** - * 将Long型时间序列列表转换为String型列表 - */ - public static String[] convertToTimeStringList(Long[] timeList, Integer type) { - String[] timeStringList = new String[timeList.length]; - try { - String dateFormat; - if (Objects.equals(type, SpreadEnums.TREND.UNIT_HOUR)) { - dateFormat = DateUtil.TIME_FORMAT; - } else if (Objects.equals(type, SpreadEnums.TREND.UNIT_DAY)) { - dateFormat = DateUtil.DATE_FORMAT; - } else { - throw new Exception(" !!! type is illegal !!!"); - } - - for (int i = 0; i < timeList.length; i++) { - timeStringList[i] = DateUtil.parseDateByFormat(timeList[i], dateFormat); - } - } catch (Exception e) { - logger.error("[SpreadServiceUtil] getTimeStringList: failed, timeList is {}, error is ", Arrays.asList(timeStringList), e); - } - return timeStringList; - } - - - /** - * 构造list搜索返回值 - */ - public static JSONObject getSearchListData(List spreadList, Integer totalNum, Integer limit) { - JSONObject data = new JSONObject(); - Double pageNum = 0d; - try { - pageNum = Math.ceil((double) totalNum / limit); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] getSearchListData: failed, spreadList is {}, limit is {}, error is ", - spreadList, limit, e); - } - data.put("totalNum", totalNum); - data.put("pageNum", pageNum.intValue()); - data.put("spreadList", spreadList); - return data; - } - - /** - * 精确过滤 - */ - public static Boolean accurateSearchResult(JSONObject spread, String field, String text) { - if (spread.containsKey(field) && spread.getString(field).equals(text)) { - return true; - } - return false; - } - - /** - * 关键词过滤 - */ - public static Boolean searchResult(JSONObject spread, String field, String text) { - if (spread.containsKey(field) && spread.getString(field).contains(text)) { - return true; - } - return false; - } - - /** - * 按照指定排序规则排序 - */ - public static List sortBySortFlag(List spreadList, String sortFlag) { - logger.info("[SpreadServiceUtil] sortBySortFlag: -排序前-spreadList is {}, sortFlag is {}", spreadList, sortFlag); - try { - if (sortFlag.equals(SpreadEnums.SORT_TYPE.PUBTIME_DESC_SORT_FLAG.getValue())) { - // 按时间倒序 - Collections.sort(spreadList, new Comparator() { - @Override - public int compare(JSONObject o1, JSONObject o2) { - // 发布时间相同的,则再看采集时间 - return o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME).compareTo(o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME)) == 0 ? - o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_CRAWLTIME).compareTo(o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_CRAWLTIME)) : - o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME).compareTo(o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME)); - } - }); - } - if (sortFlag.equals(SpreadEnums.SORT_TYPE.PUBTIME_ASC_SORT_FLAG.getValue())) { - // 按时间正序 - Collections.sort(spreadList, new Comparator() { - @Override - public int compare(JSONObject o1, JSONObject o2) { - // 发布时间相同的,则再看采集时间 - return o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME).compareTo(o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME)) == 0 ? - o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_CRAWLTIME).compareTo(o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_CRAWLTIME)) : - o1.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME).compareTo(o2.getLong(SpreadEnums.LIST.SPREAD_FIELD_PUBTIME)); - } - }); - } - logger.info("[SpreadServiceUtil] sortBySortFlag: -排序后-spreadList is {}, sortFlag is {}", spreadList, sortFlag); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] sortBySortFlag: failed, spreadList is {}, error is ", spreadList, e); - } - return spreadList; - } - - /** - * 获取指定页面list - */ - public static List getPage(List spreadList, Integer start, Integer limit) { - List pageList = new ArrayList<>(); - try { - if (start >= spreadList.size()) { - return pageList; - } - - int end = spreadList.size() >= start + limit ? start + limit : spreadList.size(); - pageList = spreadList.subList(start, end); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] getPage: failed, spreadList is {}, " + - "start is {}, limit is {}, error is ", spreadList, start, limit, e); - } - return pageList; - } - - /** - * 去除括号及括号内的内容 - */ - private static String removeBrackets(String value) { - logger.info("[SpreadServiceUtil] removeBrackets: value is {}", value); - try { - // 中文括号修正为英文括号 - value = value.trim().replaceAll("(", "(").replaceAll(")", ")"); - Pattern pattern = Pattern.compile("\\((.*?)\\)"); //英文括号 - Matcher matcher = pattern.matcher(value); - while (matcher.find()) { - value = value.replaceAll(matcher.group(0), ""); // 0是包括括号, 1是只取内容 - logger.info("[SpreadServiceUtil] removeBrackets: value is {}, remove string is {}", value, matcher.group(1)); - } - value = value.trim().replaceAll("\\(", "").replaceAll("\\)", ""); - logger.info("[SpreadServiceUtil] removeBrackets: result value is {}", value); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] removeBrackets: failed, value is {}, error is ", value, e); - } - return value; - } - - /** - * 过滤所有以"<"开头以">"结尾的标签 - */ - private static String filterHtml(String value) { - logger.info("[SpreadServiceUtil] filterHtml: value is {}", value); - try { - String regxpForHtml = "<([^>]*)>"; // 过滤所有以<开头以>结尾的标签 - Pattern pattern = Pattern.compile(regxpForHtml); - Matcher matcher = pattern.matcher(value); - StringBuffer sb = new StringBuffer(); - while (matcher.find()) { - matcher.appendReplacement(sb, ""); - } - matcher.appendTail(sb); - logger.info("[SpreadServiceUtil] filterHtml: result value is {}", sb.toString()); - return sb.toString(); - } catch (Exception e) { - logger.error("[SpreadServiceUtil] filterHtml: failed, value is {}, error is ", value, e); - } - return value; - } - - /** - * 过滤特殊字符 - */ - public static String filter(String value) { - // 合法性过滤 - if (StringUtils.isEmpty(value) || SpreadEnums.OriginalSource.illegal.contains(value.toLowerCase())) { - return ""; - } - // 过滤括号 - String valueAfterRemoveBrackets = removeBrackets(value); - // 过滤html标签 - String valueAfterFilterHtml = filterHtml(valueAfterRemoveBrackets); - return valueAfterFilterHtml; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpNodeUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpNodeUtil.java deleted file mode 100644 index 3e4fd9f..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpNodeUtil.java +++ /dev/null @@ -1,1042 +0,0 @@ -package com.bfd.mf.common.util.subject; - -import com.bfd.mf.common.util.OperatorUtil; -import com.bfd.mf.common.web.vo.params.expression.*; -import org.elasticsearch.common.Strings; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.MatchPhraseQueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.elasticsearch.index.query.SpanNotQueryBuilder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.*; - -public class ExpNodeUtil { - private static final Logger logger = LoggerFactory.getLogger(ExpNodeUtil.class); - private static int visitOrder = 0; - - /** - * 将输入表达式运算为树形图 - */ - public static ExpNode getPrefixExpressionTree(Vector input, HashSet set) throws Exception { - if (null == input || input.size() == 0) { - throw new Exception("no input object vector found"); - } - ExpNode node = null; - try { - int len = input.size(); - Object c, next = null; - char tempChar; - Stack s1 = new Stack(); - Stack s2 = new Stack(); - // 从右至左扫描表达式 - for (int i = len - 1; i >= 0; --i) { - c = input.get(i); - if (i < len - 1) { - next = input.get(i + 1); - } - if (c instanceof Integer) { - s2.push(c);// 距离 - } else if (c instanceof ExpObject) { - ExpNode leaf = new ExpNode(c); - leaf.setLeaf(true); - leaf.setOpera(false); - s2.push(leaf);// 操作数树形节点 - } else if (c instanceof Character) { - char charC = (char) c; - if (OperatorUtil.isOperator(charC)) {// 操作符 - if (isDistanceChar(charC)) {// ~ - if (s2.isEmpty() || !(s2.peek() instanceof Integer)) { - throw new IllegalArgumentException( - "Stack error,as '~' must followed by a Integer value"); - } - Integer dis = (Integer) s2.pop(); - if (null != dis && dis >= 0) { - DistanceNode opera = new DistanceNode(dis); - Object prv = input.get(i - 1); - if (i <= 0 || !(prv instanceof Character) - || ((char) input.get(i - 1) != '>' && (char) input.get(i - 1) != '》')) { - throw new IllegalArgumentException( - "Stack error,as '~' must follow a char '<' or '《'"); - } - // 右半边括号> - Stack right = new Stack(); - right.push(new HalfQuartChar('>', i)); - --i;// 开始i对应~,现在对应> - // 左右子表达式 - Stack rHalf = new Stack();// *号右边子式 - Stack lHalf = new Stack();// *号左边子式 - boolean meetStar = false;// 是否已经遇到正确的* - while (!right.isEmpty()) { - --i; - if (i < 0) { - break; - } - Object obj = input.get(i); - if (obj instanceof Character) { - if (OperatorUtil.matchChar('>', (char) obj)) {// 遇到匹配的左半括号 - if (!right.isEmpty()) { - HalfQuartChar rh = right.pop(); - if (null == rh) { - throw new IllegalArgumentException("pop of stack failed"); - } - } - if (right.isEmpty()) { - break;// 不会将对应的最左边的'<'存入栈 - } - } else if ((char) obj == '>' || (char) obj == '》') { - right.push(new HalfQuartChar('>', i)); - } else if ((char) obj == '*' && right.size() == 1) {// 最外层的* - meetStar = true; - continue; - } - } - // *分界线 - if (!meetStar) { - rHalf.push(obj); - } else { - lHalf.push(obj); - } - } - // after handle outer<(M) (N)>~10 - if (!rHalf.isEmpty() && !lHalf.isEmpty()) { - Vector lv = new Vector(); - Vector rv = new Vector(); - while (!rHalf.isEmpty()) { - rv.add(rHalf.pop()); - } - while (!lHalf.isEmpty()) { - lv.add(lHalf.pop()); - } - // 左右子Vector作为~号的左右子树 - ExpNode disNode = new ExpNode(opera); - disNode.setOpera(true); - disNode.setLeaf(false); - // - ExpNode lf = new ExpNode(lv, disNode); - ExpNode rt = new ExpNode(rv, disNode); - disNode.setLeft(lf); - disNode.setRight(rt); - s2.push(disNode);// 生成的子树入栈 - node = calc(charC, s2, null, set);// ~运算 - } - } - } else { - if (next instanceof Character - && (isRightHalfQuart((char) next) || isDistanceChar((char) next))) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - // 如果s1中已经有操作符且优先级比当前操作符高 - while (!s1.isEmpty() && s1.peek() != ')' && s1.peek() != ')' - && OperatorUtil.priorityCompare(charC, s1.peek()) <= 0) { - // 当前运算符栈不为空且要运算符栈顶运算符不是右括号且当前运算符的优先级比运算符栈顶运算符的优先级低, - // 则将运算符栈栈顶元素拿出来与操作数栈的两个栈顶元素进行运算并把运算结果压入操作数栈 - tempChar = s1.pop(); - node = calc(tempChar, s2, null, set); - } - s1.push(charC); - } - } else if (isRightHalfQuart(charC) || isRightDistance(charC)) { - if (next instanceof Character - && (isLeftHalfQuart((char) next) || isDistanceLeft((char) next))) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - if (isRightHalfQuart(charC)) { - if (next instanceof Character && isDistanceChar((char) charC)) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - } else {// > - if (next instanceof Character && ((char) charC == '&' || (char) charC == '|')) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - } - s1.push(charC); - } else if (isLeftHalfQuart(charC)) { - if (next instanceof Character - && (isDistanceChar((char) next) || (char) next == '&' || (char) next == '|')) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - // 如果是(,和(,则依次弹出S1栈顶的运算符,并压入表达式栈,直到遇到左括号为止,此时将这一对括号丢弃 - tempChar = s1.pop(); - while (!OperatorUtil.matchChar(tempChar, charC)) { - node = calc(tempChar, s2, null, set); - if (s1.isEmpty()) { - throw new IllegalArgumentException("bracket dosen't match, missing right bracket ')'."); - } - tempChar = s1.pop(); - } - } else if (isDistanceLeft(charC)) { - if (next instanceof Character && !isLeftHalfQuart((char) next) - && !isDistanceLeft((char) next)) { - throw new Exception( - "wrong position for two neighbor operas:[" + charC + "],and:[" + next + "]"); - } - // 处理<(M)*(N)>~10类型的子表达式 - if (s1.isEmpty()) { - throw new IllegalArgumentException("bracket < dosen't match, missing right bracket '>'."); - } - } else if (charC == '*' || charC == ' ') { - // 如果表达式里包含空格则不处理空格 - } else { - throw new IllegalArgumentException("wrong character '" + c + "'"); - } - } - } - while (!s1.isEmpty()) { - if (OperatorUtil.isOperator((char) s1.peek())) { - node = calc(s1.pop(), s2, null, set); - } else { - char ch = s1.pop(); - throw new Exception("Character not expected or missing its match one for:" + ch); - } - } - if (!s2.isEmpty() && s2.peek() instanceof ExpNode) { - node = (ExpNode) s2.pop(); - } - } catch (Exception e) { - logger.error("[getPrefixExpressionBuilder function] is error", e); - throw new Exception("[getPrefixExpressionBuilder function] is error", e); - } - return node; - } - - - private static boolean isDistanceChar(char ch) { - return ch == '~'; - } - - private static boolean isRightHalfQuart(char ch) { - return ch == ')' || ch == ')'; - } - - private static boolean isRightDistance(char ch) { - return ch == '》' || ch == '>'; - } - - - private static boolean isLeftHalfQuart(char ch) { - return ch == '(' || ch == '('; - } - - private static boolean isDistanceLeft(char ch) { - return ch == '《' || ch == '<'; - } - - private static ExpNode calc(char oper, Stack s2, ExpNode node, HashSet set) throws Exception { - ExpNode rst = null; - switch (oper) { - case '|': - if (s2.isEmpty() || s2.size() < 2) { - throw new Exception("missing expected ExpObject or has unexpected operator:" + oper); - } - // 二元表达式节点 - rst = new ExpNode(new OperaObject('|', OperaObject.OPERA_TYPE_TWO)); - rst.setOpera(true); - rst.setLeaf(false); - for (int i = 0; i < 2; i++) { - if (s2.peek() instanceof ExpNode) { - if (i == 0) { - rst.setLeft((ExpNode) s2.pop()); - } else if (i == 1) { - rst.setRight((ExpNode) s2.pop()); - } - } - } - s2.push(rst); - break; - case '&': - if (s2.isEmpty() || s2.size() < 2) { - throw new Exception("missing expected ExpObject or has unexpected operator:" + oper); - } - // 二元表达式节点 - rst = new ExpNode(new OperaObject('&', OperaObject.OPERA_TYPE_TWO)); - rst.setOpera(true); - rst.setLeaf(false); - for (int i = 0; i < 2; i++) { - if (s2.peek() instanceof ExpNode) { - if (i == 0) { - rst.setLeft((ExpNode) s2.pop()); - } else if (i == 1) { - rst.setRight((ExpNode) s2.pop()); - } - } - } - s2.push(rst); - break; - case '!': - break; - case '~': - if (s2.isEmpty() || !(s2.peek() instanceof ExpNode)) { - throw new Exception("missing expected ExpObject or has unexpected operator:" + oper); - } - rst = (ExpNode) s2.peek(); - Object value = rst.getValue(); - if (null == value || !(value instanceof DistanceNode)) { - rst = null; - return null; - } - break; - default: - throw new Exception("Operator not expected:" + oper); - } - return rst; - }private static ExpNode formatDistanceSubTree(ExpNode root) { - if (null == root || null == root.getValue()) { - return null; - } - // format - if (root.getValue() instanceof DistanceNode) { - ((DistanceNode) root.getValue()).setFormatFinish(true); - } - if (null != root.getLeft()) { - ExpNode left = formatDistanceSubTree(root.getLeft()); - root.setLeft(left); - } - if (null != root.getRight()) { - ExpNode right = formatDistanceSubTree(root.getRight()); - root.setRight(right); - } - return root; - } - - public static ExpNode visitAndFormatTree(ExpNode root, HashSet set) throws Exception { - if (null == root || null == root.getValue()) { - return null; - } - visitOrder++; - // visit self - Object obj = root.getValue(); - if (obj instanceof ExpObject) { - root.setLeft(null); - root.setRight(null); - root.setLeaf(true); - root.setOpera(false); - // visit - visitNodeValue(obj, visitOrder); - return root; - } - while (root.getValue() instanceof DistanceNode) { - /** - * @lei.bao
- * @2016-12-09 优化距离节点: - * 目的是将包含DistanceNode的树形图转换为只有ExpObject和Operator两种类型的结点树 - * ==》因此可以省去compute运算中的distance运算过程 - */ - ExpNode left = root.getLeft(); - if (null != left) { - if (left.getValue() instanceof Vector) { - try { - left = ExpNodeUtil.getPrefixExpressionTree((Vector) left.getValue(), set); - root.setLeft(left); - } catch (Exception e) { - logger.error("parse vector of left child for ditance failed...,will exit", e.getMessage()); - throw e; - } - } - } - ExpNode right = root.getRight(); - if (null != right) { - if (right.getValue() instanceof Vector) { - try { - right = ExpNodeUtil.getPrefixExpressionTree((Vector) right.getValue(), set); - root.setRight(right); - } catch (Exception e) { - logger.error("parse vector of left child for ditance failed...,will exit", e.getMessage()); - throw e; - } - } - } - if (null == left || null == right) { - logger.error("empty left child or right child..."); - break; - } - if (!((DistanceNode) root.getValue()).isFormatFinish()) { - // 此前还未转换过形式:~10==>A&B&AB - ExpNode node = new ExpNode(new OperaObject('&')); - node.setLeft(ExpNode.clone(left)); - node.setRight(ExpNode.clone(right)); - //format - root = formatDistanceSubTree(root); - if (null == root) { - return null; - } - ExpNode node2 = new ExpNode(new OperaObject('&')); - node2.setLeft(node); - node2.setRight(root); - // ((DistanceNode)root.getValue()).setFormatFinish(true); - root = node2; - break; - } - Object lefObj = left.getValue(); - Object rightObj = right.getValue(); - // 1:左右子树都是ExpObject对象==>转换成&运算 - if (lefObj instanceof ExpObject && rightObj instanceof ExpObject) { - int multiNum = 0; - if (!((ExpObject) lefObj).getTokens().isEmpty()) { - multiNum++; - } - if (!((ExpObject) rightObj).getTokens().isEmpty()) { - multiNum++; - } - List disObj = getDistanceObject((ExpObject) lefObj, (ExpObject) rightObj, - ((DistanceNode) root.getValue()).getDistance()); - if (null != disObj && !disObj.isEmpty()) { - if (disObj.size() == 1) { - ExpObject target = disObj.get(0); - if (null != target && null != target.getTokens() && target.getTokens().size() == 2) { - List disObjConvert = getDistanceObject((ExpObject) rightObj, (ExpObject) lefObj, - ((DistanceNode) root.getValue()).getDistance()); - if (null != disObjConvert && !disObjConvert.isEmpty() && disObjConvert.size() == 1) { - ExpObject disCon = disObjConvert.get(0); - if (null != disCon) { - ExpNode opNode = new ExpNode(new OperaObject('|')); - opNode.setLeft(new ExpNode(target)); - opNode.setRight(new ExpNode(disCon)); - root = opNode; - visitNodeValue(root.getValue(), visitOrder); - return root; - } - } - } else { - root.setValue(disObj.get(0)); - root.setLeft(null); - root.setRight(null); - visitNodeValue(root.getValue(), visitOrder); - return root; - } - } else {// >=2 - // multiNum==1 or 2 - ExpNode opNode = new ExpNode(new OperaObject('&')); - opNode.setLeft(new ExpNode(disObj.get(0))); - // - // ExpNode opLeft = new ExpNode(new OperaObject('|')); - // opLeft.setLeft(new ExpNode(disObj.get(0))); - // opLeft.setRight(new - // ExpNode(getConvertExpObject(disObj.get(0)))); - // - if (multiNum == 1) {//1-2 - ExpNode opRight = new ExpNode(new OperaObject('|')); - opRight.setLeft(new ExpNode(disObj.get(1))); - opRight.setRight(new ExpNode(getConvertExpObject(disObj.get(1)))); - opNode.setRight(opRight); - } else if (multiNum == 2) {//2-2 - opNode.setRight(new ExpNode(disObj.get(1))); - } - root = opNode; - int i = 2; - // 处理多于2个返回节点的情况 - while (i < disObj.size()) { - ExpNode opNode1 = new ExpNode(new OperaObject('&')); - // - opNode1.setLeft(root); - if (disObj.get(i).getTokens().size() != 2) { - opNode1.setRight(new ExpNode(disObj.get(i))); - } else { - ExpNode opOr = new ExpNode(new OperaObject('|')); - opOr.setLeft(new ExpNode(disObj.get(i))); - opOr.setRight(new ExpNode(getConvertExpObject(disObj.get(i)))); - opNode1.setRight(opOr); - } - root = opNode1; - i++; - } - } - } - } else - // 2:嵌套距离,左右子树为距离节点,先format字树(内部距离) - if (lefObj instanceof DistanceNode || rightObj instanceof DistanceNode) { - if (lefObj instanceof DistanceNode) { - ExpNode lft = visitAndFormatTree(root.getLeft(), set); - root.setLeft(lft); - } - if (rightObj instanceof DistanceNode) { - ExpNode rht = visitAndFormatTree(root.getRight(), set); - root.setRight(rht); - } - } // end:经过转换,子树全部变为ExpObject或者OP - - // 3:左右字树中包含OP=》转换成两两之间的距离 - // 经过转换,root可能已经变化,不再是DistanceNode类型,需要先判断 - if (root.getValue() instanceof DistanceNode) { - - lefObj = root.getLeft().getValue(); - rightObj = root.getRight().getValue(); - Character ch = null; - ExpNode leftchild = null; - ExpNode rightchild = null; - int leftOrRight = 0;// 默认无复杂运算表达式 - - // 简化distance节点,使其左右节点都是简单ExpObject - if (lefObj instanceof OperaObject) {// 左边是复杂表达式 - ch = ((OperaObject) lefObj).getOpera(); - // 左子树的两个孩子节点 - leftchild = root.getLeft().getLeft(); - rightchild = root.getLeft().getRight();// root已经变化,重新获取left - leftOrRight = 1; - } else if (rightObj instanceof OperaObject) { - ch = ((OperaObject) rightObj).getOpera(); - leftchild = root.getRight().getLeft(); - rightchild = root.getRight().getRight(); - leftOrRight = 2; - } - // 左右复杂OP表达式都存在 - if (null != leftchild && null != rightchild) { - // to-do:拆分复杂distance表达式 - ExpNode lf = ExpNode.clone(leftchild); - ExpNode rt = ExpNode.clone(rightchild); - // 目标:lf-anotherNode 和rt-anotherNode 之间做ch运算 - int distance = ((DistanceNode) obj).getDistance(); - ExpNode disNodeLeft = new ExpNode(new DistanceNode(distance)); - disNodeLeft.setOpera(true); - disNodeLeft.setLeaf(false); - // - ExpNode disNodeRight = new ExpNode(new DistanceNode(distance)); - disNodeRight.setOpera(true); - disNodeRight.setLeaf(false); - // - ExpNode anotherNode = null; - if (leftOrRight == 1) {// anotherNode取root的右子树 - anotherNode = ExpNode.clone(root.getRight()); - // - disNodeLeft.setLeft(lf); - disNodeLeft.setRight(anotherNode); - // - disNodeRight.setLeft(rt); - disNodeRight.setRight(anotherNode); - } else if (leftOrRight == 2) {// anotherNode取root左子树 - anotherNode = ExpNode.clone(root.getLeft()); - // - disNodeLeft.setLeft(anotherNode); - disNodeLeft.setRight(lf); - // - disNodeRight.setLeft(anotherNode); - disNodeRight.setRight(rt); - } - ExpNode opNode = new ExpNode(new OperaObject(ch)); - opNode.setLeft(disNodeLeft); - opNode.setRight(disNodeRight); - root = opNode;// end:处理完左右子树中包含OP的Node类型 - /* - * 至此,root类型由Distance 转成OP,子树中包含新生成的distanceNode,由后续递归过程转换 - */ - } - } - } - // visit - visitNodeValue(root.getValue(), visitOrder); - if (null != root.getLeft()) { - ExpNode ln = visitAndFormatTree(root.getLeft(), set); - if (null == ln) { - return null; - } - root.setLeft(ln); - } - if (null != root.getRight()) { - ExpNode lr = visitAndFormatTree(root.getRight(), set); - if (null == lr) { - return null; - } - root.setRight(lr); - } - return root; - } - - private static ExpObject getConvertExpObject(ExpObject exp) { - if (null == exp || null == exp.getTokens() || exp.getTokens().size() != 2) { - return null; - } - ExpObject result = new ExpObject(exp.getTokens().get(1) + " " + exp.getTokens().get(0)); - result.setFields(exp.getFields()); - result.setSlop(exp.getSlop()); - List newTokens = new ArrayList<>(); - newTokens.add(exp.getTokens().get(1)); - newTokens.add(exp.getTokens().get(0)); - result.setTokens(newTokens); - return result; - } - - public static Object ComputeNodeTree(ExpNode root, HashSet set) { - if (null == root || null == root.getValue()) { - return null; - } - Object value = root.getValue(); - if (value instanceof ExpObject) {// 叶子节点 - // 消除歧义词 - List excLst = getExcludeObject(set, (ExpObject) value); - if (null != excLst && !excLst.isEmpty()) { - // 消歧结果 - List multiQb = new ArrayList<>(); - for (ExpObject exc : excLst) { - // 对每个消歧词进行处理 - if (null != exc.getFields() && exc.getFields().length > 0 - && ((ExpObject) value).getFields().length > 0) { - int len = ((ExpObject) value).getFields().length; - if (len == 1) {// title or content - String fd = ((ExpObject) value).getFields()[0]; - // 消歧域 - if (exc.getFields().length == 1 && fd.equals(exc.getFields()[0])) {// 1-1且相等 - List sn = QueryBuilderUtil.getSpanNotQueryBuilder(exc.getFields()[0], - ((ExpObject) value).getExpression(), exc.getExpression()); - if (null != sn) { - for(int i = 0;i sn = QueryBuilderUtil.getSpanNotQueryBuilder(exc.getFields()[0], - ((ExpObject) value).getExpression(), exc.getExpression()); - if (null != sn) { - for (SpanNotQueryBuilder aSn : sn) { - BoolQueryBuilder must = QueryBuilders.boolQuery().must(aSn); - bq2.must(must); - } - } - multiQb.add(bq.should(bq1).should(bq2)); - continue; - } else {// 1-2 - for (String fdv : exc.getFields()) { - List sn = QueryBuilderUtil.getSpanNotQueryBuilder(fdv, - ((ExpObject) value).getExpression(), exc.getExpression()); - if (null != sn) { - if (fdv.equals(fd)) {// 相等 - for (SpanNotQueryBuilder aSn : sn) { - BoolQueryBuilder must = QueryBuilders.boolQuery().must(aSn); - bq1.must(must); - bq2.must(must); - } - } else { - for (SpanNotQueryBuilder aSn : sn) { - BoolQueryBuilder must = QueryBuilders.boolQuery().must(aSn); - bq2.must(must); - } - } - } - } - } - multiQb.add(bq.should(bq1).should(bq2)); - continue; - } else if (len == 2) {// title and content - if (exc.getFields().length == 1) {// 2-1 - BoolQueryBuilder bq = QueryBuilders.boolQuery(); - for (String fdv : ((ExpObject) value).getFields()) { - if (fdv.equals(exc.getFields()[0])) { - List sn = QueryBuilderUtil.getSpanNotQueryBuilder(fdv, - ((ExpObject) value).getExpression(), exc.getExpression()); - if (null != sn) { - for (SpanNotQueryBuilder aSn : sn) { - BoolQueryBuilder must = QueryBuilders.boolQuery().must(aSn); - bq.should(must); - } - } - } else { - bq.should( - QueryBuilders.matchPhraseQuery(fdv, ((ExpObject) value).getExpression()) - .slop(((ExpObject) value).getSlop())); - } - } - multiQb.add(bq); - continue; - } else if (exc.getFields().length == 2) {// 2-2 - BoolQueryBuilder bq = QueryBuilders.boolQuery(); - for (String fd : exc.getFields()) { - List sn = QueryBuilderUtil.getSpanNotQueryBuilder(fd, - ((ExpObject) value).getExpression(), exc.getExpression()); - if (null != sn) { - for (SpanNotQueryBuilder aSn : sn) { - BoolQueryBuilder must = QueryBuilders.boolQuery().must(aSn); - bq.should(must); - } - } - } - multiQb.add(bq); - continue; - } - } - } - } - // 遍历结束 - if (null != multiQb && !multiQb.isEmpty()) { - if (multiQb.size() == 1) { - return multiQb.get(0); - } - BoolQueryBuilder matchQuery = QueryBuilders.boolQuery(); - for (BoolQueryBuilder qb : multiQb) { - matchQuery.must(qb); - } - return matchQuery; - } - } - // 没有歧义词 - String exp = ((ExpObject) value).getExpression().trim(); - if (!"".equals(exp.trim())) { - if (((ExpObject) value).getFields().length == 1) { - return QueryBuilders.matchPhraseQuery(((ExpObject) value).getFields()[0], exp) - .slop(((ExpObject) value).getSlop()); - } - BoolQueryBuilder matchQuery = QueryBuilders.boolQuery(); - for (String f : ((ExpObject) value).getFields()) { - matchQuery.should(QueryBuilders.matchPhraseQuery(f, exp).slop(((ExpObject) value).getSlop())); - } - return matchQuery; - } - return null; - } else { - // 运算符(经过format之后的表达式,仅包括|,&,~) - if (null == root.getLeft() || null == root.getRight()) { - return null; - } - Object left = ComputeNodeTree(root.getLeft(), set); - Object right = ComputeNodeTree(root.getRight(), set); - if (null == left || null == right) { - return null; - } - /** - * lei bao 去掉逻辑优化,避免潜在逻辑错误 @2016-11-24 - */ - // boolean useLeft = false; - // boolean useRight = false; - if (value instanceof OperaObject) {// |,&(暂时不包括!,单独处理) - BoolQueryBuilder qb = QueryBuilders.boolQuery(); - // if (left instanceof BoolQueryBuilder && !(right instanceof - // BoolQueryBuilder)) { - // qb = (BoolQueryBuilder) left; - // useLeft = true; - // } else if (right instanceof BoolQueryBuilder && !(left - // instanceof BoolQueryBuilder)) { - // qb = (BoolQueryBuilder) right; - // useRight = true; - // } else { - // qb = QueryBuilders.boolQuery(); - // } - char opera = ((OperaObject) value).getOpera(); - switch (opera) { - case '|': - int succ = 0; - // left - if (left instanceof MatchPhraseQueryBuilder) { - qb.should((MatchPhraseQueryBuilder) left); - succ++; - } - // else if (left instanceof List) { - // for (Object obj : (List) left) { - // if (obj instanceof SpanNotQueryBuilder) { - // qb.should((SpanNotQueryBuilder) obj); - // } - // } - // succ++; - // } - else if (left instanceof BoolQueryBuilder) { - // if (!useLeft) { - qb.should((BoolQueryBuilder) left); - // } - succ++; - } - // right - if (right instanceof MatchPhraseQueryBuilder) { - qb.should((MatchPhraseQueryBuilder) right); - succ++; - } - // else if (right instanceof List) { - // for (Object obj : (List) right) { - // if (obj instanceof SpanNotQueryBuilder) { - // qb.should((SpanNotQueryBuilder) obj); - // } - // } - // succ++; - // } - else if (right instanceof BoolQueryBuilder) { - // if (!useRight) { - qb.should((BoolQueryBuilder) right); - // } - succ++; - } - if (succ == 0) { - return null; - } - break; - case '&': - // left - int succ2 = 0; - if (left instanceof MatchPhraseQueryBuilder) { - qb.must((MatchPhraseQueryBuilder) left); - succ2++; - } - // else if (left instanceof List) { - // for (Object obj : (List) left) { - // if (obj instanceof SpanNotQueryBuilder) { - // qb.must((SpanNotQueryBuilder) obj); - // } - // } - // succ2++; - // } - else if (left instanceof BoolQueryBuilder) { - // if (!useLeft) { - qb.must((BoolQueryBuilder) left); - // } - succ2++; - } - // right - if (right instanceof MatchPhraseQueryBuilder) { - qb.must((MatchPhraseQueryBuilder) right); - succ2++; - } - // else if (right instanceof List) { - // for (Object obj : (List) right) { - // if (obj instanceof SpanNotQueryBuilder) { - // qb.must((SpanNotQueryBuilder) obj); - // } - // } - // succ2++; - // } - else if (right instanceof BoolQueryBuilder) { - // if (!useRight) { - qb.must((BoolQueryBuilder) right); - // } - succ2++; - } - if (succ2 == 0) { - return null; - } - break; - default: - break; - } - return qb; - } else if (value instanceof DistanceNode) {// ~ - HashSet lfSet = getChildrenExpObject(root.getLeft()); - HashSet rtSet = getChildrenExpObject(root.getRight()); - if (null == lfSet || lfSet.isEmpty() || null == rtSet || rtSet.isEmpty()) { - return null; - } - // <(M) (N)>~10===>M&N&([every item m inM]and [every item n in - // N] distance 10 - OperaObject opera = new OperaObject('&'); - ExpNode nd = new ExpNode(opera); - nd.setLeft(root.getLeft()); - nd.setRight(root.getRight()); - Object andRst = ComputeNodeTree(nd, set);// &运算结果类型必定为BoolQueryBuilder - if (null != andRst && andRst instanceof BoolQueryBuilder) { - BoolQueryBuilder qb = (BoolQueryBuilder) andRst; - int succ = 0; - for (ExpObject lftObj : lfSet) { - for (ExpObject rtObj : rtSet) { - String[] commonField = getExcludeField(lftObj.getFields(), rtObj.getFields()); - // 暂假设都是单个词 - int succ2 = 0; - List lst = new ArrayList<>(); - for (String fd : commonField) { - String exp = (((ExpObject) lftObj).getExpression() + " " - + ((ExpObject) rtObj).getExpression()).trim(); - if (!Strings.isNullOrEmpty(exp)) { - MatchPhraseQueryBuilder multiQuery = QueryBuilders.matchPhraseQuery(fd, exp) - .slop(((DistanceNode) value).getDistance()); - if (null != multiQuery) { - // inQb.should(multiQuery); - lst.add(multiQuery); - succ2++; - } - } - } - if (succ2 > 0) { - if (lst.size() == 1) { - qb.must(lst.get(0)); - succ++; - } else if (lst.size() > 1) { - BoolQueryBuilder inQb = QueryBuilders.boolQuery(); - for (MatchPhraseQueryBuilder mq : lst) { - inQb.should(mq); - } - succ++; - qb.must(inQb); - } - } - // to-do:当左侧或者右侧某个对象为句子是需要处理其字符串数组token - } - } - if (succ > 0) { - return qb; - } else { - return null; - } - } - } - } - return null; - } - - private static List getExcludeObject(HashSet set, ExpObject obj) { - if (null == set || null == obj || Strings.isNullOrEmpty(obj.getExpression())) { - return null; - } - List lst = new ArrayList(); - for (ExpObject st : set) { - if (null != st && !Strings.isNullOrEmpty(st.getExpression()) - && st.getExpression().contains(obj.getExpression())) { - // String[] excField = getExcludeField(st.getFields(), - // obj.getFields()); - // st.setFields(excField); - lst.add(st); - } - } - return lst; - } - - /** - * 排除的字段 - */ - public static String[] getExcludeField(String[] excField, String[] objField) { - if (null == excField || excField.length == 0) { - return null; - } - if (null == objField || objField.length == 0) { - return excField; - } - List rst = new ArrayList<>(); - for (String ex : excField) { - for (String fd : objField) { - if (ex.equalsIgnoreCase(fd)) { - rst.add(ex); - } - } - } - return rst.toArray(new String[rst.size()]); - } - - private static HashSet getChildrenExpObject(ExpNode root) { - // 调用此方法之前应该确保所有节点拆解成最小表达式单元 - if (null == root || null == root.getValue()) { - return null; - } - HashSet set = new HashSet(); - if (root.getValue() instanceof ExpObject) { - set.add((ExpObject) root.getValue()); - } - if (null != root.getLeft()) { - HashSet setL = getChildrenExpObject(root.getLeft()); - if (null != setL && !setL.isEmpty()) { - set.addAll(setL); - } - } - if (null != root.getRight()) { - HashSet setR = getChildrenExpObject(root.getRight()); - if (null != setR && !setR.isEmpty()) { - set.addAll(setR); - } - } - return set; - } - - private static String getAnotherField(String fd) { - String[] allFd = new String[] { "title", "content" }; - for (String st : allFd) { - if (!st.equals(fd)) { - return st; - } - } - return null; - } - - private static List getDistanceObject(ExpObject obj1, ExpObject obj2, int distance) { - if (null == obj1 || null == obj2) { - logger.error("empty ExpObject found..."); - return null; - } - List list = new ArrayList<>(); - List tk1 = obj1.getTokens(); - List tk2 = obj2.getTokens(); - if (tk1.isEmpty() && tk2.isEmpty()) { - String exp1 = obj1.getExpression().trim(); - String exp2 = obj2.getExpression().trim(); - List tks = new ArrayList<>(); - tks.add(exp1); - tks.add(exp2); - ExpObject obj = new ExpObject(exp1 + " " + exp2, distance, tks); - obj.setFields(getExcludeField(obj1.getFields(), obj2.getFields())); - list.add(obj); - return list; - } else if (tk1.isEmpty()) {// dis2>0 - list.add(obj2); - String tk0 = obj1.getExpression(); - for (String tk : obj2.getTokens()) { - List tks = new ArrayList<>(); - tks.add(tk0); - tks.add(tk); - ExpObject rt = new ExpObject(tk0 + " " + tk, distance, tks); - rt.setFields(getExcludeField(obj1.getFields(), obj2.getFields())); - list.add(rt); - } - return list; - } else if (tk2.isEmpty()) {// dis1>0 - list.add(obj1); - String tk0 = obj2.getExpression(); - for (String tk : obj1.getTokens()) { - List tks = new ArrayList<>(); - tks.add(tk); - tks.add(tk0); - ExpObject rt = new ExpObject(tk + " " + tk0, distance, tks); - rt.setFields(getExcludeField(obj1.getFields(), obj2.getFields())); - list.add(rt); - } - return list; - } else {// neither is empty(both size>1) - list.add(obj1); - list.add(obj2); - for (String tk : obj1.getTokens()) { - for (String tkk : obj2.getTokens()) { - List tks = new ArrayList<>(); - tks.add(tk); - tks.add(tkk); - ExpObject rt = new ExpObject(tk + " " + tkk, distance, tks); - rt.setFields(getExcludeField(obj1.getFields(), obj2.getFields())); - list.add(rt); - } - } - } - return list; - } - - private static void visitNodeValue(Object obj, int order) { - if (obj instanceof ExpObject) { - // logger.info("order=" + order + ",ExpObject{" + ((ExpObject) - // obj).toString() + "}"); - System.out.print("order=" + order + ",ExpObject{" + ((ExpObject) obj).toString() + "}\n"); - } else if (obj instanceof DistanceNode) { - // logger.info("order=" + order + ",DistanceNode{" + ((DistanceNode) - // obj).toString() + "}"); - System.out.print("order=" + order + ",DistanceNode{" + ((DistanceNode) obj).toString() + "}\n"); - } else if (obj instanceof OperaObject) { - // logger.info("order=" + order + ",OperaObject{" + ((OperaObject) - // obj).toString() + "}"); - System.out.print("order=" + order + ",OperaObject{" + ((OperaObject) obj).toString() + "}\n"); - } else { - // logger.error("wrong type for order=" + order); - System.out.print("wrong type for order=" + order + "\n"); - } - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpressionParser.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpressionParser.java deleted file mode 100644 index 5b5d15d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/ExpressionParser.java +++ /dev/null @@ -1,911 +0,0 @@ -package com.bfd.mf.common.util.subject; - -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.OperatorUtil; -import com.bfd.mf.common.web.vo.params.expression.ExpObject; -import com.bfd.mf.common.web.vo.params.expression.HalfQuartChar; -import org.elasticsearch.common.Strings; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.*; - -public class ExpressionParser { - private static final Logger logger = LoggerFactory.getLogger(ExpressionParser.class); - - /** - * 表达式预处理 - */ - public static Vector preTreatExpression(String exp, String[] fields) { - if (Strings.isNullOrEmpty(exp)) { - return null; - } - exp = exp.trim(); - Vector v = new Vector(); - Stack left = new Stack<>();// '<' - Stack leftQ = new Stack<>();// '(' - Stack leftS = new Stack<>();// “ 或" - int begin = 0, end = 0; - while (end < exp.length()) { - char c = exp.charAt(end); - // 处理<>内部空格====begin - if (c == '<' || c == '《') { - left.push(new HalfQuartChar(c, end)); - } else if (c == '》' || c == '>') { - if (!left.isEmpty()) { - left.pop(); - } - } else if (c == '(' || c == '(') { - leftQ.push(new HalfQuartChar(c, end)); - } else if (c == ')' || c == ')') { - if (!leftQ.isEmpty()) { - leftQ.pop(); - } - } else if (c == '"' || c == '“') { - leftS.push(new HalfQuartChar(c, end)); - } else if (c == '"' || c == '”') { - if (!leftS.isEmpty()) { - leftS.pop(); - } - } - // 可能是<(A) (B)>,(A)和(B)之间的空格 - if (c == ' ' && leftS.isEmpty()) {// 没有在“”内部 - if (!left.isEmpty() && end - left.peek().getPosition() > 1) { - if (end > 0 && end < exp.length() - 1) { - char prev = exp.charAt(end - 1); - char next = exp.charAt(end + 1); - if (isCharWaitSepLeft(prev) && isCharWaitSepRight(next)) { - c = '*';// 替换成*,便于后续处理 - } - } - } - } - // 处理<>内部空格===end - // find next operator - if (!OperatorUtil.isSeperator(c)) { - end++; - continue; - } else if (end > 0 && exp.charAt(end - 1) == '\\' && OperatorUtil.isOperator(c)) {// 转义符 - exp = exp.replace(exp.charAt(end - 1), ' ');// 转义符用空格代替 - end++; - continue; - } - // to-do:title 运算符转义 - if (end > begin) { - String st = exp.substring(begin, end).trim(); - if (!Strings.isNullOrEmpty(st)) { - v.add(st); - } - } - if (c != ',' && c != ',' && c != '"' && c != '“' && c != '”') { - v.add(new Character(c)); - } else { - logger.warn("miss ',' at:{}", end); - } - end++; - begin = end; - } - if (end == exp.length() && begin <= end - 1) { - if (begin == end - 1 && OperatorUtil.isSeperator(exp.charAt(begin))) {// last - // op - v.add(new Character(exp.charAt(begin))); - } else { - String sub = exp.substring(begin).trim(); - if (!Strings.isNullOrEmpty(sub)) { - v.add(sub); - } - } - } - // 遍历分隔结束,开始处理特殊字符 - for (int i = 0; i < v.size(); i++) { - Object o = v.get(i); - if ((o instanceof String && ((String) o).trim().equals("")) - || o instanceof Character && ((char) o == '\u0000' || (char) o == '\n' || (char) o == '\t')) { - // v.remove(i); - } else if (i > 0 && i < v.size() - 1) { - if (o instanceof String && ((String) o).trim().contains(" ")) { - Object prev = v.get(i - 1); - Object next = v.get(i + 1); - if (prev instanceof Character && (char) prev == '<' && next instanceof Character - && (char) next == '>') { - String[] arr = ((String) o).split(" "); - if (null != arr && arr.length == 2) { - v.set(i, arr[0]); - v.add(i, '*');// 《》中间空格用*代替,便于后续处理 - v.add(i, arr[1]); - } - } - } - } - } - // 处理~10类型 - for (int j = 0; j < v.size(); j++) { - Object obj = v.get(j); - if (obj instanceof String) { - if (j > 0) { - Object prv = v.get(j - 1); - // 处理~10类型后面的数字 - if (prv instanceof Character && (char) prv == '~') { - Integer va = Integer.parseInt((String) obj); - if (null != va) { - v.set(j, va); - } - continue; - } - } - // title:表达式 - ExpObject ebj = null; - if (((String) obj).equals("title:") || ((String) obj).equals("content:")) { - v.remove(j); - if (j < v.size() - 1) { - Object next = v.get(j);// next now is j - if (next instanceof Character && (char) next == '(' || (char) next == '(') { - Stack stk = new Stack(); - stk.push(new HalfQuartChar('(', j)); - for (int k = j + 1; k < v.size(); k++) { - Object kv = v.get(k); - if (kv instanceof Character) { - if ((char) kv == '(' || (char) kv == '(') { - stk.push(new HalfQuartChar('(', k)); - } else if ((char) kv == ')' || (char) kv == ')') { - if (!stk.isEmpty()) { - stk.pop(); - } - if (stk.isEmpty()) { - break; - } - } - } else if (kv instanceof String) { - if (((String) obj).equals("title:")) { - ebj = new ExpObject((String) kv, new String[]{"title"}); - } else { - ebj = new ExpObject((String) kv, fields); - } - v.set(k, ebj); - } - } - } - } - } else if (((String) obj).startsWith("title:") || ((String) obj).startsWith("content:")) { - if (((String) obj).startsWith("title:")) { - String value = ((String) obj).substring("title:".length()); - ebj = new ExpObject((String) value, new String[]{"title"}); - } else { - String value = ((String) obj).substring("content:".length()); - ebj = new ExpObject((String) value, fields); - } - v.set(j, ebj); - } else { - List fieldsNew = new ArrayList<>(); - fieldsNew.add(ESConstant.TITLE); - List fieldsList = Arrays.asList(fields); - fieldsNew.addAll(fieldsList); - ebj = new ExpObject((String) obj, fieldsNew.toArray(new String[fieldsNew.size()])); - v.set(j, ebj); - } - } - } - return v; - } - - /** - * 表达式预处理 不自动添加title属性 - */ - public static Vector preTreatExpressionNoTitleField(String exp, String[] fields) { - if (Strings.isNullOrEmpty(exp)) { - return null; - } - exp = exp.trim(); - Vector v = new Vector(); - Stack left = new Stack<>();// '<' - Stack leftQ = new Stack<>();// '(' - Stack leftS = new Stack<>();// “ 或" - int begin = 0, end = 0; - while (end < exp.length()) { - char c = exp.charAt(end); - // 处理<>内部空格====begin - if (c == '<' || c == '《') { - left.push(new HalfQuartChar(c, end)); - } else if (c == '》' || c == '>') { - if (!left.isEmpty()) { - left.pop(); - } - } else if (c == '(' || c == '(') { - leftQ.push(new HalfQuartChar(c, end)); - } else if (c == ')' || c == ')') { - if (!leftQ.isEmpty()) { - leftQ.pop(); - } - } else if (c == '"' || c == '“') { - leftS.push(new HalfQuartChar(c, end)); - } else if (c == '"' || c == '”') { - if (!leftS.isEmpty()) { - leftS.pop(); - } - } - // 可能是<(A) (B)>,(A)和(B)之间的空格 - if (c == ' ' && leftS.isEmpty()) {// 没有在“”内部 - if (!left.isEmpty() && end - left.peek().getPosition() > 1) { - if (end > 0 && end < exp.length() - 1) { - char prev = exp.charAt(end - 1); - char next = exp.charAt(end + 1); - if (isCharWaitSepLeft(prev) && isCharWaitSepRight(next)) { - c = '*';// 替换成*,便于后续处理 - } - } - } - } - // 处理<>内部空格===end - // find next operator - if (!OperatorUtil.isSeperator(c)) { - end++; - continue; - } else if (end > 0 && exp.charAt(end - 1) == '\\' && OperatorUtil.isOperator(c)) {// 转义符 - exp = exp.replace(exp.charAt(end - 1), ' ');// 转义符用空格代替 - end++; - continue; - } - // to-do:title 运算符转义 - if (end > begin) { - String st = exp.substring(begin, end).trim(); - if (!Strings.isNullOrEmpty(st)) { - v.add(st); - } - } - if (c != ',' && c != ',' && c != '"' && c != '“' && c != '”') { - v.add(new Character(c)); - } else { - logger.warn("miss ',' at:{}", end); - } - end++; - begin = end; - } - if (end == exp.length() && begin <= end - 1) { - if (begin == end - 1 && OperatorUtil.isSeperator(exp.charAt(begin))) {// last - // op - v.add(new Character(exp.charAt(begin))); - } else { - String sub = exp.substring(begin).trim(); - if (!Strings.isNullOrEmpty(sub)) { - v.add(sub); - } - } - } - // 遍历分隔结束,开始处理特殊字符 - for (int i = 0; i < v.size(); i++) { - Object o = v.get(i); - if ((o instanceof String && ((String) o).trim().equals("")) - || o instanceof Character && ((char) o == '\u0000' || (char) o == '\n' || (char) o == '\t')) { - // v.remove(i); - } else if (i > 0 && i < v.size() - 1) { - if (o instanceof String && ((String) o).trim().contains(" ")) { - Object prev = v.get(i - 1); - Object next = v.get(i + 1); - if (prev instanceof Character && (char) prev == '<' && next instanceof Character - && (char) next == '>') { - String[] arr = ((String) o).split(" "); - if (null != arr && arr.length == 2) { - v.set(i, arr[0]); - v.add(i, '*');// 《》中间空格用*代替,便于后续处理 - v.add(i, arr[1]); - } - } - } - } - } - // 处理~10类型 - for (int j = 0; j < v.size(); j++) { - Object obj = v.get(j); - if (obj instanceof String) { - if (j > 0) { - Object prv = v.get(j - 1); - // 处理~10类型后面的数字 - if (prv instanceof Character && (char) prv == '~') { - Integer va = Integer.parseInt((String) obj); - if (null != va) { - v.set(j, va); - } - continue; - } - } - // title:表达式 - ExpObject ebj = null; - if (((String) obj).equals("title:") || ((String) obj).equals("content:")) { - v.remove(j); - if (j < v.size() - 1) { - Object next = v.get(j);// next now is j - if (next instanceof Character && (char) next == '(' || (char) next == '(') { - Stack stk = new Stack(); - stk.push(new HalfQuartChar('(', j)); - for (int k = j + 1; k < v.size(); k++) { - Object kv = v.get(k); - if (kv instanceof Character) { - if ((char) kv == '(' || (char) kv == '(') { - stk.push(new HalfQuartChar('(', k)); - } else if ((char) kv == ')' || (char) kv == ')') { - if (!stk.isEmpty()) { - stk.pop(); - } - if (stk.isEmpty()) { - break; - } - } - } else if (kv instanceof String) { - if (((String) obj).equals("title:")) { - ebj = new ExpObject((String) kv, new String[]{"title"}); - } else { - ebj = new ExpObject((String) kv, fields); - } - v.set(k, ebj); - } - } - } - } - } else if (((String) obj).startsWith("title:") || ((String) obj).startsWith("content:")) { - if (((String) obj).startsWith("title:")) { - String value = ((String) obj).substring("title:".length()); - ebj = new ExpObject((String) value, new String[]{"title"}); - } else { - String value = ((String) obj).substring("content:".length()); - ebj = new ExpObject((String) value, fields); - } - v.set(j, ebj); - } else { - List fieldsNew = new ArrayList<>(); - //fieldsNew.add(ESConstant.TITLE); - List fieldsList = Arrays.asList(fields); - fieldsNew.addAll(fieldsList); - ebj = new ExpObject((String) obj, fieldsNew.toArray(new String[fieldsNew.size()])); - v.set(j, ebj); - } - } - } - return v; - } - - public static Vector preProcessExpression(String exp, boolean onlyKeyWord, String[] fields) throws Exception { - if (Strings.isNullOrEmpty(exp)) { - return null; - } - - exp = exp.trim(); - String[] arr = exp.split(" "); - Vector v = new Vector<>(); - int quartNum = 0; - for (String st : arr) { - st = st.trim(); - if (Strings.isNullOrEmpty(st)) { - continue; - } - int begin = 0, end = 0; - while (end < st.length()) { - char c = st.charAt(end); - // find next operator - if (!OperatorUtil.isSeperator(c)) { - end++; - continue; - } else { // c为分隔符 - if (end > 0 && st.charAt(end - 1) == '\\') {// 转义符 - st = st.replace(st.charAt(end - 1), ' ');// 转义符用空格代替 - end++; - continue; - } else if (c == '“' || (c == '"' && quartNum % 2 == 0)) { - quartNum++; - } else if (c == '”' || (c == '"' && quartNum % 2 == 1)) { - quartNum--; - } else if (quartNum > 0) { - end++; - continue; - } - } - if (end > begin) { - String st0 = st.substring(begin, end).trim(); - if (!Strings.isNullOrEmpty(st0)) { - v.add(st0); - } - } - if (c != ',' && c != ',') { - v.add(new Character(c)); - } else { - logger.warn("miss ',' at:{}", end); - } - end++; - begin = end; - } - if (end == st.length() && begin <= end - 1) { - if (begin == end - 1 && OperatorUtil.isSeperator(st.charAt(begin)) && quartNum == 0) { - v.add(new Character(st.charAt(begin))); - } else { - String sub = st.substring(begin).trim(); - if (!Strings.isNullOrEmpty(sub)) { - v.add(sub); - } - } - } - } - logger.debug("after split,vector now is:{}",v); - visitVector(v); - logger.info("=====================endLess loop============="); - logger.info("keyWord is:{}", exp); - v = checkAndFormatVector(v, onlyKeyWord, fields); - logger.debug("after checkAndFormatVector,vector now is:{}",v); - visitVector(v); - return v; - } - - public static Vector preProcessExpressionNoTitleField(String exp, boolean onlyKeyWord, String[] fields) throws Exception { - if (Strings.isNullOrEmpty(exp)) { - return null; - } - - exp = exp.trim(); - String[] arr = exp.split(" "); - Vector v = new Vector<>(); - int quartNum = 0; - for (String st : arr) { - st = st.trim(); - if (Strings.isNullOrEmpty(st)) { - continue; - } - int begin = 0, end = 0; - while (end < st.length()) { - char c = st.charAt(end); - // find next operator - if (!OperatorUtil.isSeperator(c)) { - end++; - continue; - } else { // c为分隔符 - if (end > 0 && st.charAt(end - 1) == '\\') {// 转义符 - st = st.replace(st.charAt(end - 1), ' ');// 转义符用空格代替 - end++; - continue; - } else if (c == '“' || (c == '"' && quartNum % 2 == 0)) { - quartNum++; - } else if (c == '”' || (c == '"' && quartNum % 2 == 1)) { - quartNum--; - } else if (quartNum > 0) { - end++; - continue; - } - } - if (end > begin) { - String st0 = st.substring(begin, end).trim(); - if (!Strings.isNullOrEmpty(st0)) { - v.add(st0); - } - } - if (c != ',' && c != ',') { - v.add(new Character(c)); - } else { - logger.warn("miss ',' at:{}", end); - } - end++; - begin = end; - } - if (end == st.length() && begin <= end - 1) { - if (begin == end - 1 && OperatorUtil.isSeperator(st.charAt(begin)) && quartNum == 0) { - v.add(new Character(st.charAt(begin))); - } else { - String sub = st.substring(begin).trim(); - if (!Strings.isNullOrEmpty(sub)) { - v.add(sub); - } - } - } - } - logger.debug("after split,vector now is:{}",v); - visitVector(v); - logger.info("=====================endLess loop============="); - logger.info("keyWord is:{}", exp); - v = checkAndFormatVectorNoTitleField(v, onlyKeyWord, fields); - logger.debug("after checkAndFormatVector,vector now is:{}",v); - visitVector(v); - return v; - } - - private static void visitVector(Vector vector) { - if (null == vector || vector.isEmpty()) { - logger.debug("vector is empty!"); - return; - } - for (int i = 0; i < vector.size(); i++) { - Object obj = vector.get(i); - logger.debug("i=" + i + ",value=" + obj); - } - return; - } - - private static Vector checkAndFormatVector(Vector vector, boolean onlyKeyWord, String[] fields) throws Exception { - if (null == vector || vector.isEmpty()) { - return null; - } - logger.warn("[checkAndFormatVector] fields: {}{}", fields); - List list = new ArrayList(); - for (int i = 0; i < vector.size(); i++) { - list.add(vector.get(i)); - } - logger.info("vector list is:{}", list); - Stack leftS = new Stack();// 存放“” - Stack leftQ = new Stack();// 存放<> - int qNum = 0;// <>数目 - int starNum = 0;// <>内部分隔空格个数 - for (int i = 0; i < vector.size(); i++) { - Object ob = vector.get(i); - // <>内部 - if (!leftQ.isEmpty() && leftS.isEmpty()) { - if (i > 0) { - if (isLeftWaitSeperate(vector.get(i - 1)) && isRightWaitSeperate(vector.get(i))) { - vector.insertElementAt(new Character('*'), i); - starNum++; - continue; - } else if (i > 1 && isLeftWaitSeperate(vector.get(i - 2)) - && isRightWaitSeperate(vector.get(i - 1))) { - vector.insertElementAt(new Character('*'), i - 1); - starNum++; - continue; - } - } - } - if (ob instanceof Character) { - if ((char) ob == '“' || ((char) ob == '"' && leftS.size() % 2 == 0)) { - leftS.push(new HalfQuartChar('“', i)); - vector.remove(ob); - i--; - } else if ((char) ob == '”' || ((char) ob == '"' && leftS.size() % 2 == 1)) { - if (!leftS.isEmpty()) { - leftS.pop(); - } else { - throw new Exception(" “” not match Exception,“ expected "); - } - vector.remove(ob); - i--; - } else if ((char) ob == '<' || (char) ob == '《') { - leftQ.push(new HalfQuartChar('<', i)); - qNum++; - } else if ((char) ob == '>' || (char) ob == '》') { - if (!leftQ.isEmpty()) { - leftQ.pop(); - } else { - throw new Exception("> not match Exception,< expected "); - } - } - } else if (ob instanceof String) { - if (i > 0) { - Object prv = vector.get(i - 1); - if (prv instanceof String && onlyKeyWord) {// 连续String - String ns = null; - if (!leftS.isEmpty()) {// “”内部连续String=>合并 - ns = ((String) prv).trim() + " " + ((String) ob).trim(); - } else if (leftQ.isEmpty()) {// 不在<>内部 - ns = ((String) prv).trim() + ((String) ob).trim(); - } - if (!Strings.isNullOrEmpty(ns)) { - vector.set(i - 1, ns); - vector.remove(i--); - } - } - } - } - } - // “”不匹配 - if (!leftS.isEmpty()) { - throw new Exception(" “” not match Exception!"); - } else if (!leftQ.isEmpty()) { - throw new Exception("<> not match Exception!"); - } else if (starNum != qNum) { - throw new Exception("<> phrase Exception,riht format should like: ~10"); - } - // 封装成OP或者ExpObject - for (int j = 0; j < vector.size(); j++) { - Object obj = vector.get(j); - if (obj instanceof String) { - if (j > 0) { - Object prv = vector.get(j - 1); - // 处理~10类型后面的数字 - if (prv instanceof Character && (char) prv == '~') { - Integer va = Integer.parseInt((String) obj); - if (null != va) { - vector.set(j, va); - } - continue; - } - } - // title:表达式 - ExpObject ebj = null; - if (((String) obj).equals("title:") || ((String) obj).equals("content:")) { - vector.remove(j); - if (j < vector.size() - 1) { - Object next = vector.get(j);// next now is j - if (next instanceof Character && (char) next == '(' || (char) next == '(') { - Stack stk = new Stack(); - stk.push(new HalfQuartChar('(', j)); - for (int k = j + 1; k < vector.size(); k++) { - Object kv = vector.get(k); - if (kv instanceof Character) { - if ((char) kv == '(' || (char) kv == '(') { - stk.push(new HalfQuartChar('(', k)); - } else if ((char) kv == ')' || (char) kv == ')') { - if (!stk.isEmpty()) { - stk.pop(); - } - if (stk.isEmpty()) { - break; - } - } - } else if (kv instanceof String) {// 括号内部普通字符串 - // 类似 title:(A|title:B)==》去掉title:B之前的title: - while (((String) kv).startsWith("title:") || ((String) kv).startsWith("content:")) { - int begin = ((String) kv).indexOf(':'); - kv = ((String) kv).substring(begin + 1).trim(); - } - if (((String) kv).startsWith("\\title:")// 使用转义符==>当做普通字符串处理 - || ((String) kv).startsWith("\\content:")) { - kv = ((String) kv).substring(2).trim(); - } - if (((String) obj).equals("title:")) { - ebj = new ExpObject((String) kv, new String[]{"title"}); - } else { - ebj = new ExpObject((String) kv, fields); - } - vector.set(k, ebj); - } - } - } - } - } else if (((String) obj).startsWith("title:") || ((String) obj).startsWith("content:")) { - String value = (String) obj; - while (value.startsWith("title:") || value.startsWith("content:")) { - value = value.substring(value.indexOf(":") + 1); - } - if (((String) obj).startsWith("title:")) { - ebj = new ExpObject((String) value, new String[]{"title"}); - } else { - ebj = new ExpObject((String) value, fields); - } - vector.set(j, ebj); - } else {// 普通字符串 - if (((String) obj).startsWith("\\title:")// 使用转义符==>当做普通字符串处理 - || ((String) obj).startsWith("\\content:")) { - obj = ((String) obj).substring(2).trim(); - } - List fieldsNew = new ArrayList<>(); - fieldsNew.add(ESConstant.TITLE); - List fieldsList = Arrays.asList(fields); - fieldsNew.addAll(fieldsList); - ebj = new ExpObject((String) obj, fieldsNew.toArray(new String[fieldsNew.size()])); - vector.set(j, ebj); - } - } - } - return vector; - } - - private static Vector checkAndFormatVectorNoTitleField(Vector vector, boolean onlyKeyWord, String[] fields) throws Exception { - if (null == vector || vector.isEmpty()) { - return null; - } - logger.warn("[checkAndFormatVector] fields: {}{}", fields); - List list = new ArrayList(); - for (int i = 0; i < vector.size(); i++) { - list.add(vector.get(i)); - } - logger.info("vector list is:{}", list); - Stack leftS = new Stack();// 存放“” - Stack leftQ = new Stack();// 存放<> - int qNum = 0;// <>数目 - int starNum = 0;// <>内部分隔空格个数 - for (int i = 0; i < vector.size(); i++) { - Object ob = vector.get(i); - // <>内部 - if (!leftQ.isEmpty() && leftS.isEmpty()) { - if (i > 0) { - if (isLeftWaitSeperate(vector.get(i - 1)) && isRightWaitSeperate(vector.get(i))) { - vector.insertElementAt(new Character('*'), i); - starNum++; - continue; - } else if (i > 1 && isLeftWaitSeperate(vector.get(i - 2)) - && isRightWaitSeperate(vector.get(i - 1))) { - vector.insertElementAt(new Character('*'), i - 1); - starNum++; - continue; - } - } - } - if (ob instanceof Character) { - if ((char) ob == '“' || ((char) ob == '"' && leftS.size() % 2 == 0)) { - leftS.push(new HalfQuartChar('“', i)); - vector.remove(ob); - i--; - } else if ((char) ob == '”' || ((char) ob == '"' && leftS.size() % 2 == 1)) { - if (!leftS.isEmpty()) { - leftS.pop(); - } else { - throw new Exception(" “” not match Exception,“ expected "); - } - vector.remove(ob); - i--; - } else if ((char) ob == '<' || (char) ob == '《') { - leftQ.push(new HalfQuartChar('<', i)); - qNum++; - } else if ((char) ob == '>' || (char) ob == '》') { - if (!leftQ.isEmpty()) { - leftQ.pop(); - } else { - throw new Exception("> not match Exception,< expected "); - } - } - } else if (ob instanceof String) { - if (i > 0) { - Object prv = vector.get(i - 1); - if (prv instanceof String && onlyKeyWord) {// 连续String - String ns = null; - if (!leftS.isEmpty()) {// “”内部连续String=>合并 - ns = ((String) prv).trim() + " " + ((String) ob).trim(); - } else if (leftQ.isEmpty()) {// 不在<>内部 - ns = ((String) prv).trim() + ((String) ob).trim(); - } - if (!Strings.isNullOrEmpty(ns)) { - vector.set(i - 1, ns); - vector.remove(i--); - } - } - } - } - } - // “”不匹配 - if (!leftS.isEmpty()) { - throw new Exception(" “” not match Exception!"); - } else if (!leftQ.isEmpty()) { - throw new Exception("<> not match Exception!"); - } else if (starNum != qNum) { - throw new Exception("<> phrase Exception,riht format should like: ~10"); - } - // 封装成OP或者ExpObject - for (int j = 0; j < vector.size(); j++) { - Object obj = vector.get(j); - if (obj instanceof String) { - if (j > 0) { - Object prv = vector.get(j - 1); - // 处理~10类型后面的数字 - if (prv instanceof Character && (char) prv == '~') { - Integer va = Integer.parseInt((String) obj); - if (null != va) { - vector.set(j, va); - } - continue; - } - } - // title:表达式 - ExpObject ebj = null; - if (((String) obj).equals("title:") || ((String) obj).equals("content:")) { - vector.remove(j); - if (j < vector.size() - 1) { - Object next = vector.get(j);// next now is j - if (next instanceof Character && (char) next == '(' || (char) next == '(') { - Stack stk = new Stack(); - stk.push(new HalfQuartChar('(', j)); - for (int k = j + 1; k < vector.size(); k++) { - Object kv = vector.get(k); - if (kv instanceof Character) { - if ((char) kv == '(' || (char) kv == '(') { - stk.push(new HalfQuartChar('(', k)); - } else if ((char) kv == ')' || (char) kv == ')') { - if (!stk.isEmpty()) { - stk.pop(); - } - if (stk.isEmpty()) { - break; - } - } - } else if (kv instanceof String) {// 括号内部普通字符串 - // 类似 title:(A|title:B)==》去掉title:B之前的title: - while (((String) kv).startsWith("title:") || ((String) kv).startsWith("content:")) { - int begin = ((String) kv).indexOf(':'); - kv = ((String) kv).substring(begin + 1).trim(); - } - if (((String) kv).startsWith("\\title:")// 使用转义符==>当做普通字符串处理 - || ((String) kv).startsWith("\\content:")) { - kv = ((String) kv).substring(2).trim(); - } - if (((String) obj).equals("title:")) { - ebj = new ExpObject((String) kv, new String[]{"title"}); - } else { - ebj = new ExpObject((String) kv, fields); - } - vector.set(k, ebj); - } - } - } - } - } else if (((String) obj).startsWith("title:") || ((String) obj).startsWith("content:")) { - String value = (String) obj; - while (value.startsWith("title:") || value.startsWith("content:")) { - value = value.substring(value.indexOf(":") + 1); - } - if (((String) obj).startsWith("title:")) { - ebj = new ExpObject((String) value, new String[]{"title"}); - } else { - ebj = new ExpObject((String) value, fields); - } - vector.set(j, ebj); - } else {// 普通字符串 - if (((String) obj).startsWith("\\title:")// 使用转义符==>当做普通字符串处理 - || ((String) obj).startsWith("\\content:")) { - obj = ((String) obj).substring(2).trim(); - } - List fieldsNew = new ArrayList<>(); - //fieldsNew.add(ESConstant.TITLE); - List fieldsList = Arrays.asList(fields); - fieldsNew.addAll(fieldsList); - ebj = new ExpObject((String) obj, fieldsNew.toArray(new String[fieldsNew.size()])); - vector.set(j, ebj); - } - } - } - return vector; - } - - /** - * 处理消歧语句表达式 - */ - public static HashSet handleMinusExpression(String minus, String[] fields) throws Exception { - if (Strings.isNullOrEmpty(minus)) { - return null; - } - minus = minus.replaceAll(",", ","); - minus = minus.replaceAll(" ", " "); - Vector v = preProcessExpression(minus, false, fields); - HashSet set = new HashSet(); - if (null != v && !v.isEmpty()) { - for (Object obj : v) { - if (obj instanceof ExpObject) { - set.add((ExpObject) obj); - } - } - } - return set; - } - - private static boolean isCharWaitSepLeft(char charC) { - if (!OperatorUtil.isSeperator(charC) || charC == ')' || charC == ')' || charC == '>' || charC == '》' - || charC == '"' || charC == '”') { - return true; - } - return false; - } - - private static boolean isCharWaitSepRight(char charC) { - if (!OperatorUtil.isSeperator(charC) || charC == '(' || charC == '(' || charC == '<' || charC == '《' - || charC == '"' || charC == '“') { - return true; - } - return false; - } - - private static boolean isLeftWaitSeperate(Object obj) { - if (null == obj) { - return false; - } - if (obj instanceof Character) { - return (char) obj == ')' || (char) obj == ')' || (char) obj == '"' || (char) obj == '”'; - } else if (obj instanceof String) { - return !Strings.isNullOrEmpty((String) obj); - } else if (obj instanceof Integer) {// ~20 - return true; - } - return false; - } - - private static boolean isRightWaitSeperate(Object obj) { - if (null == obj) { - return false; - } - if (obj instanceof Character) { - return (char) obj == '(' || (char) obj == '(' || (char) obj == '<' || (char) obj == '《' || (char) obj == '"' - || (char) obj == '“'; - } else if (obj instanceof String) { - return !Strings.isNullOrEmpty((String) obj); - } - return false; - } -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/QueryBuilderUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/QueryBuilderUtil.java deleted file mode 100644 index 2f37e2a..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/subject/QueryBuilderUtil.java +++ /dev/null @@ -1,669 +0,0 @@ -package com.bfd.mf.common.util.subject; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.ESServerUtils; -import com.bfd.mf.common.web.repository.mysql.cache.ClusterRepository; -import com.bfd.mf.common.web.vo.params.expression.ExpNode; -import com.bfd.mf.common.web.vo.params.expression.ExpObject; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import org.elasticsearch.action.admin.indices.analyze.AnalyzeResponse; -import org.elasticsearch.action.admin.indices.analyze.AnalyzeResponse.AnalyzeToken; -import org.elasticsearch.client.IndicesAdminClient; -import org.elasticsearch.common.Strings; -import org.elasticsearch.index.query.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.*; - -import static com.bfd.mf.common.util.constants.ESConstant.EXCLUDE_KEYWORDS_SPLIT_CN_SYSBOL; -import static com.bfd.mf.common.util.constants.ESConstant.EXCLUDE_KEYWORDS_SPLIT_SYSBOL; - - -public class QueryBuilderUtil { - private static final Logger logger = LoggerFactory.getLogger(QueryBuilderUtil.class); - - @Autowired - private ClusterRepository clusterRepository; - - public static BoolQueryBuilder getQueryBuilderFromExpNodeTree(ExpNode root, HashSet set) throws Exception { - if (null == root || null == root.getValue()) { - return null; - } - /* - * @2016-12-7 - * @author lei.bao - * format之后: - * 1:distance运算拆成全部单个(左右子树全部是ExpObject) - * 2:所有ExpObject都是叶子节点且规范 - */ - ExpNode rst = ExpNodeUtil.visitAndFormatTree(root, set); - // - Object rt = ExpNodeUtil.ComputeNodeTree(rst, set); - - if (rt instanceof BoolQueryBuilder) { - return (BoolQueryBuilder) rt; - } else if (rt instanceof MatchQueryBuilder) { - BoolQueryBuilder bq = QueryBuilders.boolQuery(); - return bq.must((MatchQueryBuilder) rt); - }else if(rt instanceof MatchPhraseQueryBuilder){ - BoolQueryBuilder bq = QueryBuilders.boolQuery(); - return bq.must((MatchPhraseQueryBuilder) rt); - }else if(rt instanceof AbstractQueryBuilder){ - BoolQueryBuilder bq = QueryBuilders.boolQuery(); - return bq.must((AbstractQueryBuilder) rt); - } - return null; - } - - public static BoolQueryBuilder handleExcludeExpression(String exclude, String[] fields) { - Vector v = ExpressionParser.preTreatExpression(exclude, fields); - if (null != v && !v.isEmpty()) { - BoolQueryBuilder qb = QueryBuilders.boolQuery(); - for (Object obj : v) { - if (obj instanceof ExpObject) { - BoolQueryBuilder innerQb = QueryBuilders.boolQuery(); - for (String fd : ((ExpObject) obj).getFields()) { - innerQb.should(QueryBuilders.matchPhraseQuery(fd, ((ExpObject) obj).getExpression()).slop(0)); - } - qb.mustNot(innerQb); - } - } - return qb; - } - return null; - } - - public static BoolQueryBuilder handleExcludeExpressionNoTitleField(String exclude, String[] fields) { - Vector v = ExpressionParser.preTreatExpressionNoTitleField(exclude, fields); - if (null != v && !v.isEmpty()) { - BoolQueryBuilder qb = QueryBuilders.boolQuery(); - for (Object obj : v) { - if (obj instanceof ExpObject) { - BoolQueryBuilder innerQb = QueryBuilders.boolQuery(); - for (String fd : ((ExpObject) obj).getFields()) { - innerQb.should(QueryBuilders.matchPhraseQuery(fd, ((ExpObject) obj).getExpression()).slop(0)); - } - qb.mustNot(innerQb); - } - } - return qb; - } - return null; - } - - public static BoolQueryBuilder handleTitleExcludeExpression(String exclude) { - if (TStringUtils.isNotEmpty(exclude)) { - // 标点符号修正 - exclude = exclude.replaceAll(EXCLUDE_KEYWORDS_SPLIT_CN_SYSBOL, - EXCLUDE_KEYWORDS_SPLIT_SYSBOL); - exclude = "title:(" + exclude + ")"; - Vector v = ExpressionParser.preTreatExpression(exclude, new String[]{ESConstant.TITLE}); - BoolQueryBuilder qb = QueryBuilders.boolQuery(); - BoolQueryBuilder titleExcludeBuilder = null; - if (null != v && !v.isEmpty()) { - titleExcludeBuilder = QueryBuilders.boolQuery(); - for (Object obj : v) { - if (obj instanceof ExpObject) { - QueryBuilder wordQueryBuilder = QueryBuilders.matchPhraseQuery(ESConstant.SEARCH_SCOPE_TYPE_TITLE, - ((ExpObject) obj).getExpression()).slop(0); - titleExcludeBuilder.should(wordQueryBuilder); - } - } - qb.mustNot(titleExcludeBuilder); - return qb; - } - } - return null; - } - - public static List getSpanNotQueryBuilder(String field, String shortStr, String longerStr) { - if (Strings.isNullOrEmpty(shortStr) || Strings.isNullOrEmpty(longerStr)) { - logger.error("empty short term or longer term,return NULL"); - return null; - } - int start = longerStr.indexOf(shortStr); - if (start < 0 || start >= longerStr.length()) { - return null; - } - int lenS = shortStr.length(); - if ((lenS + start) > longerStr.length()) { - return null; - } - List subs = new ArrayList(); - if (start > 0) { - subs.add(longerStr.substring(0, start)); - } - subs.add(longerStr.substring(start, start + lenS)); - if ((start + lenS) < longerStr.length()) { - subs.add(longerStr.substring(start + lenS)); - } - // call API to get include clause - AnalyzeResult anaLyRst = getAnalyzeResult(shortStr); - if (null == anaLyRst) { - return null; - } - List rst = anaLyRst.getList(); - // include clause - List spans = new ArrayList<>(); - SpanNearQueryBuilder span; - if (null != rst && rst.size() > 1) { - for (String tk : rst) { - span = new SpanNearQueryBuilder( - new SpanTermQueryBuilder(field, tk), anaLyRst.getSlop()).inOrder(true); - spans.add(span); - } - } else { - span = new SpanNearQueryBuilder( - new SpanTermQueryBuilder(field, shortStr), anaLyRst.getSlop()).inOrder(true); - spans.add(span); - } - List lst = new LinkedList<>(); - int maxDis = 0; - for (String st : subs) { - AnalyzeResult anLyRst = getAnalyzeResult(st); - if (null == anLyRst) { - continue; - } - if (anLyRst.getSlop() > maxDis) { - maxDis = anLyRst.getSlop(); - } - List rt = anLyRst.getList(); - for (String s : rt) { - if (!listContanins(lst, s)) { - lst.add(s); - } - } - } - List sns = new ArrayList<>(); - SpanNotQueryBuilder sn = null; - if (!lst.isEmpty()) { - List sners = new ArrayList<>(); - SpanNearQueryBuilder sner = null; - for (String st0 : lst) { - sner = new SpanNearQueryBuilder(new SpanTermQueryBuilder(field, st0), maxDis).inOrder(true); - sners.add(sner); - } - if (spans.size() < sners.size()) { - for (SpanNearQueryBuilder spanNearQueryBuilder : sners) { - for (SpanNearQueryBuilder span1 : spans) { - sn = new SpanNotQueryBuilder(span1, spanNearQueryBuilder); - sns.add(sn); - } - } - } - } - return sns; - } - - public static String getBoolQueryBuilderStr(BoolQueryBuilder qb) { - String st = qb.toString(); - char[] cs = st.toCharArray(); - StringBuilder sb = new StringBuilder(); - for (char c : cs) { - if (c != '\u0000' && c != '\n' && c != '\t') { - sb.append(c); - } - } - String sb1 = sb.toString().replaceAll(" ", " "); - while (sb1.contains(" ")) { - sb1 = sb1.replaceAll(" ", " "); - } - String[] st0 = sb1.toString().split(" "); - sb = new StringBuilder(); - int num = 0; - for (String s0 : st0) { - if (!Strings.isNullOrEmpty(s0)) { - while (s0.startsWith(" ") || s0.endsWith(" ")) { - s0 = s0.trim(); - } - if (s0.startsWith("\"") || s0.startsWith("\\“")) { - num++; - } else if (s0.endsWith("\"") || s0.endsWith("\\”")) { - num--; - } - if (!"".equals(s0)) { - sb.append(s0); - } - if (num > 0) { - sb.append(" "); - } - } - } - st = "BoolQueryBuilder=" + sb.toString(); - return st; - } - - public static BoolQueryBuilder getBoolQueryBuilderFromSqlStr(String str) { - BoolQueryBuilder qb = QueryBuilders.boolQuery(); - if (Strings.isNullOrEmpty(str) || !str.startsWith("BoolQueryBuilder=")) { - return qb; - } - // str = str.replaceAll("\t", " "); - int start = str.indexOf("{"); - String jsonStr = str.substring(start); - JSONObject json = (JSONObject) JSONObject.parse(jsonStr); - if (null == json) { - return qb; - } -// QueryBuilder pqT = getQueryBuilderFromJSON(json); -// if (null != pqT && pqT instanceof BoolQueryBuilder) { -// return (BoolQueryBuilder) pqT; -// } - WrapperQueryBuilder wrapper = QueryBuilders.wrapperQuery(jsonStr); - qb.must(wrapper); - return qb; - } - - private static List getQueryBuilderFromJSON(JSONObject json) { - if (null == json) { - return null; - } - JSONObject bool = (JSONObject) json.get("bool"); - if (TObjectUtils.isNull(bool)) { - // add term and so on - JSONObject query = (JSONObject) json.get("query_string"); - if (null != query) { - String opr = query.getString("default_operator"); - Operator op = null; - if (null != opr && opr.equalsIgnoreCase("and")) { - op = Operator.AND; - } else { - op = Operator.OR; - } - List tqbs = new ArrayList<>(); - QueryBuilder tqb = new QueryStringQueryBuilder(query.getString("query")) - .defaultField(query.getString("default_field")).defaultOperator(op); - tqbs.add(tqb); - return tqbs; - } - JSONObject term = (JSONObject) json.get("term"); - if (null != term) { - List tqbs = new ArrayList<>(); - QueryBuilder tqb = null; - if (null != term.get("content")) { - tqb = new TermQueryBuilder("content", term.get("content")); - } else if (null != term.get("title")) { - tqb = new TermQueryBuilder("title", term.get("title")); - } else if (null != term.get("source")) { - tqb = new TermQueryBuilder("source", term.get("source")); - } - tqbs.add(tqb); - return tqbs; - } - // match - JSONObject match = (JSONObject) json.get("match"); - if (null != match) { - JSONObject content = match.getJSONObject("content"); - if (null != content) { - List list = new ArrayList<>(); - QueryBuilder slop = QueryBuilders - .matchPhraseQuery("content", content.getString("query")) - .slop(content.getIntValue("slop")); - list.add(slop); - return list; - } else { - JSONObject title = match.getJSONObject("title"); - if (null != title) { - List list = new ArrayList<>(); - QueryBuilder slop = QueryBuilders.matchPhraseQuery("title", title.getString("query")) - .slop(title.getIntValue("slop")); - list.add(slop); - return list; - } - } - } - // multi_match - JSONObject multi_match = json.getJSONObject("multi_match"); - if (null != multi_match) { - String qry = multi_match.getString("query"); - JSONArray fields = (JSONArray) multi_match.get("fields"); - String[] arr = new String[fields.size()];// - for (int i = 0; i < fields.size(); i++) { - Object f = fields.get(i); - if (f instanceof String) { - arr[i] = (String) f; - } - } - int slop = multi_match.getIntValue("slop"); - // MultiMatchQueryBuilder mt = new MultiMatchQueryBuilder(); - List list = new ArrayList<>(); - QueryBuilder multiQuery = QueryBuilders.multiMatchQuery(qry, arr).slop(slop); - list.add(multiQuery); - return list; - } - // span_term - JSONObject span_term = (JSONObject) json.getJSONObject("span_term"); - if (null != span_term) { - JSONObject content = span_term.getJSONObject("content"); - if (null != content) { - List list = new ArrayList<>(); - QueryBuilder span_termQ = new SpanTermQueryBuilder("content", content.getString("value")); - // spanNotQ.include(span_termQ); - list.add(span_termQ); - return list; - } - JSONObject title = span_term.getJSONObject("title"); - if (null != title) { - List list = new ArrayList<>(); - QueryBuilder span_termQ = new SpanTermQueryBuilder("title", title.getString("value")); - list.add(span_termQ); - return list; - } - } - // span_not - JSONObject span_not = (JSONObject) json.get("span_not"); - List span_termQ = null; - if (null != span_not) { - List spanNotQs = new ArrayList<>(); - SpanNotQueryBuilder spanNotQ; - JSONObject include = span_not.getJSONObject("include"); - SpanNearQueryBuilder sner = null; - if (null != include) { - span_termQ = getQueryBuilderFromJSON(include); - JSONObject span_near = include.getJSONObject("span_near"); - if (null != span_near && span_near.size() > 0) { - Object array = span_near.get("clauses"); - if (null != array) { - if (array instanceof JSONObject) { - List span_termQ2 = getQueryBuilderFromJSON((JSONObject) array); - if (null != span_termQ2 && span_termQ2.size() > 0 && - span_termQ2 instanceof SpanTermQueryBuilder) { - sner = new SpanNearQueryBuilder((SpanQueryBuilder) span_termQ2.get(0), 0).inOrder(true); - } - } else if (array instanceof JSONArray) { - ListIterator arr = ((JSONArray) array).listIterator(); - while (arr.hasNext()) { - Object obj = arr.next(); - if (null == obj) - continue; - JSONObject jsn = (JSONObject) obj; - List span_termQ2 = getQueryBuilderFromJSON((JSONObject) jsn); - if (null != span_termQ2 && span_termQ2.size() > 0 && span_termQ2 instanceof SpanTermQueryBuilder) { - sner = new SpanNearQueryBuilder((SpanQueryBuilder) span_termQ2.get(0), 0) - .inOrder(true); - } - } - } - } - } - } - JSONObject exclude = span_not.getJSONObject("exclude"); - SpanNearQueryBuilder snerExclude = null; - if (null != exclude) { - JSONObject span_near = exclude.getJSONObject("span_near"); - if (null != span_near) { - Object array = span_near.get("clauses"); - if (null != array) { - if (array instanceof JSONObject) { - List span_termQs = getQueryBuilderFromJSON((JSONObject) array); - if (null != span_termQs && span_termQs.size() > 0 && span_termQs instanceof SpanTermQueryBuilder) { - // spanNotQ..exclude((SpanTermQueryBuilder) - // span_termQ); - snerExclude = new SpanNearQueryBuilder((SpanQueryBuilder) span_termQs.get(0), 0).inOrder(true); - } - } else if (array instanceof JSONArray) { - ListIterator arr = ((JSONArray) array).listIterator(); - while (arr.hasNext()) { - Object obj = arr.next(); - if (null == obj) - continue; - JSONObject jsn = (JSONObject) obj; - List span_termQs = getQueryBuilderFromJSON((JSONObject) jsn); - if (null != span_termQs && span_termQs.size() > 0 && span_termQs instanceof SpanTermQueryBuilder) { - // spanNotQ.exclude((SpanTermQueryBuilder) - // span_termQ); - snerExclude = new SpanNearQueryBuilder((SpanQueryBuilder) span_termQs.get(0), 0).inOrder(true); - } - } - } - } - } - } - if (span_termQ != null && snerExclude != null) { - spanNotQ = new SpanNotQueryBuilder((SpanQueryBuilder) span_termQ, snerExclude); - spanNotQs.add(spanNotQ); - } - if (sner != null && snerExclude != null) { - spanNotQ = new SpanNotQueryBuilder(sner, snerExclude); - spanNotQs.add(spanNotQ); - } - return spanNotQs; - } - return null; - } - // add child BoolQueryBuilder - List pqbs = new ArrayList<>(); - BoolQueryBuilder pqb = new BoolQueryBuilder(); - // - Object filter = bool.get("filter"); - if (filter instanceof JSONObject) { - JSONObject obj = (JSONObject) filter; - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.filter(qb.get(0)); - } - } - } else if (filter instanceof JSONArray) { - JSONArray array = (JSONArray) filter; - JSONObject[] objs = new JSONObject[array.size()]; - array.toArray(objs); - for (JSONObject obj : objs) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.filter(qb.get(0)); - } - } - } - pqbs.add(pqb); - // - Object mst = bool.get("must"); - if (mst instanceof JSONObject) { - JSONObject obj = (JSONObject) mst; - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.must(qb.get(0)); - } - } - } else if (mst instanceof JSONArray) { - JSONArray array = (JSONArray) mst; - JSONObject[] objs = new JSONObject[array.size()]; - array.toArray(objs); - for (JSONObject obj : objs) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.must(qb.get(0)); - } - } - } - pqbs.add(pqb); - Object mstNot = bool.get("must_not"); - if (mstNot instanceof JSONObject) { - JSONObject obj = (JSONObject) mstNot; - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.mustNot(qb.get(0)); - } - } - } else if (mstNot instanceof JSONArray) { - JSONArray array = (JSONArray) mstNot; - JSONObject[] objs = new JSONObject[array.size()]; - array.toArray(objs); - for (JSONObject obj : objs) { - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.mustNot(qb.get(0)); - } - } - } - } - pqbs.add(pqb); - Object should = bool.get("should"); - if (should instanceof JSONObject) { - JSONObject obj = (JSONObject) should; - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.mustNot(qb.get(0)); - } - } - } else if (should instanceof JSONArray) { - JSONArray array = (JSONArray) should; - JSONObject[] objs = new JSONObject[array.size()]; - array.toArray(objs); - for (JSONObject obj : objs) { - if (null != obj) { - List qb = getQueryBuilderFromJSON(obj); - if (null != qb) { - pqb.mustNot(qb.get(0)); - } - } - } - } - pqbs.add(pqb); - return pqbs; - } - - private static class AnalyzeResult { - private int slop = 0; - private List list; - - public AnalyzeResult() { - } - - public AnalyzeResult(int slop, List lst) { - this.slop = slop; - this.list = lst; - } - - public int getSlop() { - return slop; - } - - public void setSlop(int slop) { - this.slop = slop; - } - - public List getList() { - return list; - } - - public void setList(List list) { - this.list = list; - } - } - - private static AnalyzeResult getAnalyzeResult(String termStr) { - if (Strings.isNullOrEmpty(termStr)) { - return null; - } - AnalyzeResult rst = new AnalyzeResult(); - List list = new ArrayList<>(); - if (termStr.trim().length() == 1) { - list.add(termStr); - rst.setList(list); - rst.setSlop(0); - return rst; - } - ESServerUtils esServerUtil = new ESServerUtils(); - // todo - if (null == esServerUtil.getClientByClusterId(1L)) { - esServerUtil.initEsServer(); - } - // TODO - IndicesAdminClient adminClient = esServerUtil.getClientByClusterId(1L).admin().indices(); -// ESHandler esHandler = ESHandler.getESHandler("bfd_mediaforce", "192.168.189.84:9300"); -// IndicesAdminClient adminClient = esHandler.getClient().admin().indices(); - // - AnalyzeResponse analyzeResponse = adminClient.prepareAnalyze(termStr).setAnalyzer("ik").execute().actionGet(); - List lst = analyzeResponse.getTokens(); - // 分词失败 - if (null == lst || lst.isEmpty()) { - list.add(termStr); - rst.setList(list); - rst.setSlop(0); - return rst; - } else { - HashSet exclude = new HashSet<>(); - for (AnalyzeToken tk : lst) { - for (AnalyzeToken at : lst) { - if (!tk.getTerm().equals(at.getTerm()) && at.getTerm().contains(tk.getTerm())) { - exclude.add(tk); - } - } - } - List waitLst = new ArrayList<>(); - for (AnalyzeToken tk : lst) { - if (!exclude.contains(tk)) { - waitLst.add(tk); - } - } - if (waitLst.size() == 1) { - list.add(waitLst.get(0).getTerm()); - rst.setList(list); - rst.setSlop(0); - return rst; - } - // multi-term - int maxDistance = 0; - for (int i = 0; i < waitLst.size(); i++) { - AnalyzeToken tk = waitLst.get(i); - list.add(tk.getTerm()); - if (i > 0) { - AnalyzeToken prv = waitLst.get(i - 1); - int dis = tk.getPosition() - prv.getPosition() - 1; - if (dis > maxDistance) { - maxDistance = dis; - } - } - } - rst.setList(list); - rst.setSlop(maxDistance); - } - // list = dropShorterStr(list); - return rst; - } - - private static List dropShorterStr(List lst) { - if (null == lst || lst.isEmpty()) { - return null; - } - HashSet set = new HashSet<>();// 要排除的term - for (String st : lst) { - // 删除较短的分词term - for (String s : lst) { - if (!st.equals(s) && s.contains(st)) { - // lst.remove(st); - set.add(st); - } - } - } - List rst = new ArrayList<>(); - for (String st0 : lst) { - if (!set.contains(st0)) { - rst.add(st0); - } - } - return rst; - } - - private static boolean listContanins(List lst, String str) { - if (null == lst || lst.isEmpty()) { - return false; - } - for (String st : lst) { - if (st.equals(str)) { - return true; - } - } - return false; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/thread/SubjectDataQueryThread.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/thread/SubjectDataQueryThread.java deleted file mode 100644 index 18f4b8a..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/thread/SubjectDataQueryThread.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.bfd.mf.common.util.thread; - -import com.bfd.mf.common.util.constants.ESConstant; -import net.logstash.logback.encoder.org.apache.commons.lang.exception.ExceptionUtils; -import org.elasticsearch.action.search.SearchRequestBuilder; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.common.unit.TimeValue; -import org.elasticsearch.search.slice.SliceBuilder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.List; -import java.util.Random; -import java.util.concurrent.CountDownLatch; - -public class SubjectDataQueryThread implements Runnable { - private static final Logger logger = LoggerFactory.getLogger(SubjectDataQueryThread.class); - - private static Random random = new Random(System.currentTimeMillis()); - - private final List searchResponseList; - - private SearchRequestBuilder searchRequestBuilder; - - private TransportClient transportClient; - - private final CountDownLatch latch; - - public SubjectDataQueryThread(final List searchResponseList, - SearchRequestBuilder searchRequestBuilder, - TransportClient transportClient, - CountDownLatch latch) { - this.searchResponseList = searchResponseList; - this.searchRequestBuilder = searchRequestBuilder; - this.transportClient = transportClient; - this.latch = latch; - } - - @Override - public void run() { - try { - Thread.sleep(random.nextInt(100)); - Integer sliceMax = 3; - // 启用slice scroll - for (int j = 0; j < sliceMax; j++) { - Long start = System.currentTimeMillis(); - SliceBuilder sliceBuilder = new SliceBuilder(ESConstant.PUBTIME, j, sliceMax); - //游标分页 - searchRequestBuilder.setSize(ESConstant.MAX_SCROLL_SIZE) // 5000 - .setScroll(TimeValue.timeValueMinutes(ESConstant.MAX_SEARCH_TIME_MINUTES)) //2L - .slice(sliceBuilder); - SearchResponse searchResponse = searchRequestBuilder.get(); - searchResponseList.add(searchResponse); - String scrollId = searchResponse.getScrollId(); - int currentResultsNumber = searchResponse.getHits().getHits().length; - while (currentResultsNumber == ESConstant.MAX_SCROLL_SIZE) { // 5000 - SearchResponse searchResponsePage = transportClient - .prepareSearchScroll("inner_scroll" + scrollId) - .setScrollId(scrollId) - .setScroll(TimeValue.timeValueMinutes(ESConstant.MAX_SEARCH_TIME_MINUTES)) // 2L - .get(); - scrollId = searchResponsePage.getScrollId(); - currentResultsNumber = searchResponsePage.getHits().getHits().length; - searchResponseList.add(searchResponsePage); - } - logger.info("SubjectDataQueryThread used time {}" ,System.currentTimeMillis()-start); - } - latch.countDown(); - } catch (Exception e) { - logger.error("当前线程errors = {},线程 = {} ", ExceptionUtils.getFullStackTrace(e), Thread.currentThread().getId()); - } - } - -// @Override -// public void run() { -// try { -// Thread.sleep(random.nextInt(100)); -// Integer sliceMax = 3; -// // 启用slice scroll -// for (int j = 0; j < sliceMax; j++) { -// Long start = System.currentTimeMillis(); -// SliceBuilder sliceBuilder = new SliceBuilder(ESConstant.PUBTIME, j, sliceMax); -// //游标分页 -// searchRequestBuilder.setSize(ESConstant.MAX_SCROLL_SIZE) // 5000 -// .setScroll(TimeValue.timeValueMinutes(ESConstant.MAX_SEARCH_TIME_MINUTES)) //2L -// .slice(sliceBuilder); -// SearchResponse searchResponse = searchRequestBuilder.get(); -// searchResponseList.add(searchResponse); -// String scrollId = searchResponse.getScrollId(); -// int currentResultsNumber = searchResponse.getHits().getHits().length; -// while (currentResultsNumber == ESConstant.MAX_SCROLL_SIZE) { // 5000 -// System.out.println(" 进入 while 循环的次数是多少呀???"); -// SearchResponse searchResponsePage = transportClient -// .prepareSearchScroll("inner_scroll" + scrollId) -// .setScrollId(scrollId) -// .setScroll(TimeValue.timeValueMinutes(ESConstant.MAX_SEARCH_TIME_MINUTES)) // 2L -// .get(); -// scrollId = searchResponsePage.getScrollId(); -// currentResultsNumber = searchResponsePage.getHits().getHits().length; -// searchResponseList.add(searchResponsePage); -// } -// logger.info("SubjectDataQueryThread used time {}" ,System.currentTimeMillis()-start); -// } -// latch.countDown(); -// } catch (Exception e) { -// logger.error("当前线程errors = {},线程 = {} ", ExceptionUtils.getFullStackTrace(e), Thread.currentThread().getId()); -// } -// } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/CollectionUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/CollectionUtils.java deleted file mode 100644 index eb93f7f..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/CollectionUtils.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.bfd.mf.common.util.utility; - -import com.alibaba.fastjson.JSONObject; - -import java.util.*; -import java.util.concurrent.CopyOnWriteArrayList; - -public class CollectionUtils { - - public static Map sortByValue(Map map,int topSize) { - List list = new LinkedList(map.entrySet()); - Collections.sort(list, new Comparator() { - - public int compare(Object o1, Object o2) { - return -((Comparable) ((Map.Entry) (o1)).getValue()) - .compareTo(((Map.Entry) (o2)).getValue()); - - } - }); - Map result = new LinkedHashMap(); - int index = 0; - for (Iterator it = list.iterator(); it.hasNext();) { - Map.Entry entry = (Map.Entry) it.next(); - - index++; - - result.put(entry.getKey(), entry.getValue()); - - if(index == topSize){ - break; - } - } - return result; - } - - public static List sortByValueForList(Map map, int topSize) { - List list = new LinkedList(map.entrySet()); - Collections.sort(list, new Comparator() { - - @Override - public int compare(Object o1, Object o2) { - return -((Comparable) ((Map.Entry) (o1)).getValue()) - .compareTo(((Map.Entry) (o2)).getValue()); - - } - }); - List listResult = new CopyOnWriteArrayList<>(); - int index = 0; - for (Iterator it = list.iterator(); it.hasNext();) { - Map.Entry entry = (Map.Entry) it.next(); - JSONObject json= new JSONObject(); - json.put("key",entry.getKey()); - json.put("value",entry.getValue()); - listResult.add(json); - index++; - if(index == topSize){ - break; - } - } - return listResult; - } - - public static List sortByValueForListSubTopSize(Map map, int topSize, Map resultMap) { - //Map subMap = new HashMap<>(); - List list = new LinkedList(map.entrySet()); - Collections.sort(list, new Comparator() { - - @Override - public int compare(Object o1, Object o2) { - return -((Comparable) ((Map.Entry) (o1)).getValue()) - .compareTo(((Map.Entry) (o2)).getValue()); - - } - }); - List listResult = new CopyOnWriteArrayList<>(); - int index = 0; - for (Iterator it = list.iterator(); it.hasNext();) { - Map.Entry entry = (Map.Entry) it.next(); - JSONObject json= new JSONObject(); - //json.put("key",entry.getKey()); - //json.put("value",entry.getValue()); - resultMap.put(entry.getKey(),entry.getValue()); - //listResult.add(json); - index++; - if(index == topSize){ - break; - } - } - return listResult; - } - -// public static void main(String[] args) { -// String aaa = " {\"a1@呲:\":1,\"台湾\":3,\"非洲\":1,\"北:\":1,\" 除非\":1,\"阿卷\":1,\"啼啼\":1,\"帝都\":1,\"//@佐佐山\":3,\"明城\":1,\"上海人民公园\":9,\" //@林\":1,\"黄菡\":4,\"://@佐佐山\":3,\"//@曹\":1,\"阿梳卡:\":1,\"西索\":2,\"景.\":1,\"@Taru-欣\":1,\"旁友圈\":1,\"罗诘:\":1,\"东京\":2,\"似乎\":1,\"阿门\":1,\"丹-\":1,\"@江\":1,\"美国\":5,\"南山 \":1,\"小南\":1,\"//@尒\":1,\"上海\":1,\"香港\":1,\"-阳\":1,\"吧\":2,\"嘛非\":1,\"找华哥\":2,\"//@丸山\":1,\"//@明海\":1,\"滚南\":1,\"长久\":1,\"兄陵\":1,\"南昌路\":1,\"@\":1,\"://@九鹭非\":1,\"压力山\":1,\"环岛\":2,\"啊\":1,\"~干\":1,\"大同\":1,\"乎\":1,\" //@\":1,\"魏洲\":1,\"亚洲\":1,\" //@佐佐山\":1,\"香:\":1,\"宁愿单\":1,\"瑞典\":1,\"//@日村\":1,\"江南\":2,\"死//@\":1,\" //@坂\":1,\"江苏\":1,\"//@\":1,\"@秀山\":1,\"伦比\":1,\"焦虑\":1,\"啦\":1,\"大野蘭\":1,\"微博\":1,\" //@兰\":3,\"越久\":1,\"日本\":17,\"//@九鹭非\":1,\"//@孙\":1,\"南山\":1,\" //@番\":1,\"//@坂\":1,\"浸山\":1,\"//@切尔西\":1,\"二师\":1,\"中國\":3,\"阿瓦卡\":2,\"po//@安\":1,\"乎~\":1,\"新加坡\":1,\"中国\":62,\"台独港\":1,\"//@明河\":1,\"//@路路\":2,\"://@江\":2,\"攻城\":1}"; -// Map map = (Map)JSONObject.parse(aaa); -// Map resultMap = new HashMap(); -// String E1 = "[`~!@$%^&*()+=|{}':;',.<>/?~!@¥%……&*()——+|{}【】‘;:”“’。,、?]"; -// String E2 = "[a-zA-Z]";// 英文 -// String E3 = "[0-9]";// 数字 -// String values = ""; -// for (Map.Entry entry : map.entrySet()) { -// values = entry.getKey().replaceAll(E1, ""); -// values = values.replaceAll(E2, ""); -// values = values.replaceAll(E3, ""); -// resultMap.put(values, entry.getValue()); -// System.out.println(values); -// } -// } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/DateUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/DateUtil.java deleted file mode 100644 index fca7955..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/DateUtil.java +++ /dev/null @@ -1,292 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.util.utility; - -import com.bfd.nlp.common.util.string.TStringUtils; - -import java.io.UnsupportedEncodingException; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.GregorianCalendar; - -public class DateUtil { - - private static final String DATE_UNIT_DAY = "D"; - public static final String DATE_UNIT_HOUR = "H"; - - public static String TIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; - public static String DATE_FORMAT = "yyyy-MM-dd"; - - /** - * @param startTime 开始时间 - * @param endTime 结束时间 - * @param unit D H - * @return - */ - public static double getTimeIntervalByUnit(long startTime, long endTime, String unit) { - int interval = 0; - long dateDistance = endTime - startTime; - if (null == unit || dateDistance <= 0) - return -1; - if (DATE_UNIT_DAY.equals(unit)) - interval = 24 * 3600 * 1000; - if (DATE_UNIT_HOUR.equals(unit)) - interval = 3600 * 1000; - return Math.ceil(dateDistance / interval); - } - - /* - * 20160807190815678:yyyyMMddhhmmssSSS - */ - public static String getTimeStrForNow() { - SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); - return sdf.format(new Date()); - } - - private static String getTimeStrDefault() { - SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); - Date date = new Date(); - date.setYear(1970); - return sdf.format(date); - } - - public static byte[] timeStr2Chars(String timeStr) { - try { - return timeStr.getBytes("UTF-8"); - } catch (UnsupportedEncodingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - return new byte[0]; - } - - public static long timeStr2Long(String timeStr) { - if (TStringUtils.isEmpty(timeStr)) { - String defTm = getTimeStrDefault(); - return Long.parseLong(defTm); - } - return Long.parseLong(timeStr); - } - - private static Date parseDate(long time) { - return new Date(time); - } - - /*** - * timestamp to yyyy-MM-dd - * - * @param timestamp - * @return - */ - public static String parseDateByday(long timestamp) { - Date date = parseDate(timestamp); - SimpleDateFormat format = new SimpleDateFormat(DATE_FORMAT); - return format.format(date); - } - - /*** - * timestamp to yyyy-MM-dd HH:mm:ss - * - * @param timestamp - * @return - */ - public static String parseDateByTime(long timestamp) { - Date date = parseDate(timestamp); - SimpleDateFormat format = new SimpleDateFormat(TIME_FORMAT); - return format.format(date); - } - - /** - * timestamp with special format - * - * @param timestamp - * @param format - * @return - */ - public static String parseDateByFormat(long timestamp, String format) { - Date date = parseDate(timestamp); - SimpleDateFormat dateFormat = new SimpleDateFormat(format); - return dateFormat.format(date); - } - - /** - * 获取今天是周几 - * - * @return 一个表示周几的数字 - */ - public static int getDay() { - Calendar cal = Calendar.getInstance(); - int day = cal.get(Calendar.DAY_OF_WEEK) - 1; - day = day == 0 ? 7 : day; - return day; - } - - /** - * 获取现在是今天的多少秒 - * - * @return 一个数字表示现在是今天的多少秒 - */ - public static int getSecondsNow() { - Calendar curDate = Calendar.getInstance(); - Calendar tommorowDate = new GregorianCalendar(curDate - .get(Calendar.YEAR), curDate.get(Calendar.MONTH), curDate - .get(Calendar.DATE) + 1, 0, 0, 0); - return 24 * 3600 - ((int) (tommorowDate.getTimeInMillis() - curDate.getTimeInMillis()) / 1000); - } - - public static class CronDate extends Date { - private int hour; - private int minute; - - public CronDate(int h, int m) { - this.hour = h; - this.minute = m; - } - - CronDate() { - this.hour = 0; - this.minute = 0; - } - - int getHour() { - return hour; - } - - void setHour(int hour) { - this.hour = hour; - } - - public int getMinute() { - return minute; - } - - public void setMinute(int minute) { - this.minute = minute; - } - - public boolean before(CronDate date) { - if (null == date) { - return false; - } - if (date.getHour() != this.getHour()) { - return (this.getHour() - date.getHour() < 0); - } - // compare minute - return (this.getMinute() - date.getMinute() < 0); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - if (hour >= 10) { - sb.append(hour); - } else { - sb.append("0").append(hour); - } - sb.append(":"); - if (minute >= 10) { - sb.append(minute); - } else { - sb.append("0").append(minute); - } - return sb.toString(); - } - // @Override - // public String toString() { - // Date date = new Date(); - // date.setHours(hour); - // date.setMinutes(minute); - // String str = cronDdateFormate.format(date); - // return str; - // } - } - - /** - * @param dateStr - * @return - */ - public static CronDate parseDateFromStr(String dateStr) { - if (TStringUtils.isEmpty(dateStr)) { - return null; - } - String[] ts = dateStr.split(":"); - if (null == ts || ts.length == 0) { - return null; - } - CronDate date = new CronDate(); - for (int i = 0; i < ts.length; i++) { - String s = ts[i]; - int num = parseDoubleStr(s); - if (i == 0) { - date.setHour(num); - } else if (i == 1) { - date.setMinute(num); - } - } - return date; - } - - /** - * @param st - * @return - */ - private static Integer parseDoubleStr(String st) { - if (TStringUtils.isEmpty(st)) { - return null; - } - while (st.startsWith("0") && st.length() > 1) { - st = st.substring(1); - } - if (TStringUtils.isEmpty(st)) { - return 0; - } - return Integer.parseInt(st); - } - - /** - * 获取当前时间的小时数和分钟数 - * - * @return - */ - public static int[] getCurrentHourAndMinute() { - int[] dat = new int[2]; - Date date = new Date(); - dat[0] = date.getHours(); - dat[1] = date.getMinutes(); - return dat; - } - -// public static String extractDataScope(long from, long to, boolean fileName) { -// return fileName ? -// (MfTimeUtil.getCSTDateStr(from, "yyyyMMdd") + "_" -// + MfTimeUtil.getCSTDateStr(to, "yyyyMMdd")) -// : ("[" + MfTimeUtil.getCSTDateStr(from, "yyyy-MM-dd") + " ~ " -// + MfTimeUtil.getCSTDateStr(to, "yyyy-MM-dd") + "]"); -// -// } - - public static Date stringToDate(String dateStr) { - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - try { - return sdf.parse(dateStr); - } catch (ParseException e) { - return new Date(); - } - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/EsQueryConditionUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/EsQueryConditionUtils.java deleted file mode 100644 index 2a6e7b9..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/EsQueryConditionUtils.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.bfd.mf.common.util.utility; - -public class EsQueryConditionUtils { - - public static String[] getIncludeQueryField(String... includeField) { - String[] includeFields = new String[includeField.length]; - System.arraycopy(includeField, 0, includeFields, 0, includeField.length - 1 + 1); - return includeFields; - } - - - public static String[] getExcludeQueryField(String... excludeField) { - String[] excludeFields = new String[excludeField.length]; - System.arraycopy(excludeField, 0, excludeFields, 0, excludeField.length - 1 + 1); - return excludeFields; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/TagWordUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/TagWordUtils.java deleted file mode 100644 index 4b266cc..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/util/utility/TagWordUtils.java +++ /dev/null @@ -1,518 +0,0 @@ -package com.bfd.mf.common.util.utility; - -import org.apache.commons.collections.CollectionUtils; - -import java.lang.reflect.Array; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -public class TagWordUtils { - private String tagBegin; - private String tagEnd; - Branch frontbegin = null; - Set keyWords = new HashSet<>(); - - public Set getKeyWords() { - return keyWords; - } - - public String[] getKeyWordsArray() { - if (CollectionUtils.isNotEmpty(keyWords)) { - String[] keyWordsArray = new String[keyWords.size()]; - return keyWords.toArray(keyWordsArray); - } - return null; - } - - public TagWordUtils(String begin, String end) { - this.tagBegin = begin; - this.tagEnd = end; - } - - public TagWordUtils addKeyWords(String[] keyWord) { - if (keyWord.length > 0) { - for (int i = 0; i < keyWord.length; i++) { - this.keyWords.add(keyWord[i].trim()); - } - } - return this; - } - - // 是否发现词 - boolean findWord = false; - - - /** - * Eric Added 2017-05-15 19:28:43 - * If keep break lines \n in content - * - * @param content - * @param keepBr - * @return - */ - public String getTagContentWithBr(String content, boolean keepBr) { - if (content == null || content.trim().length() == 0 - || keyWords.size() == 0) { - return content; - } - // 对原始高亮的信息,进行去掉标签的操作;并且进行去掉 \n \r 以及特殊字符 - content = content.replaceAll(" ", "").replaceAll(" ", "").replaceAll("\t", "").replaceAll(" ", "") - .replaceAll("  ", ""); - if (!keepBr) { - content = content.replaceAll("\r", "").replaceAll("\n", ""); - } - this.frontbegin = new MakeLibrary().getStringTree(this.keyWords); - if (frontbegin == null) { - return content; - } - char[] chars = content.toCharArray(); - // 正文 - StringBuilder sb = new StringBuilder(); - - WoodInterface head = this.frontbegin; - int start = 0; - int end = 1; - int index = 0; - boolean isBack = false; - int length = chars.length; - // 此处是正向最大匹配 - for (int i = 0; i < length; i++) { - index++; - head = head.get(Character.toLowerCase(chars[i])); - if (head == null) { - if (isBack) { - sb.append(tagBegin).append(chars, start, end).append(tagEnd); - start = start + end; - i = start - 1; - isBack = false; - } else { - sb.append(chars, start, end); - i = start; - start++; - } - head = this.frontbegin; - index = 0; - end = 1; - continue; - } - switch (head.getStatus()) { - case 1: - break; - case 2: - end = index; - isBack = true; - break; - case 3: - sb.append(tagBegin).append(chars, start, index).append(tagEnd); - start = start + index; - index = 0; - end = 1; - isBack = false; - head = this.frontbegin; - break; - } - } - - return sb.toString(); - } - - /** - * 外媒格式处理 - * - * @param content - * @return - */ - public String getForeignTagContent(String content) { - if (content == null || content.trim().length() == 0 - || keyWords.size() == 0) { - return content; - } - this.frontbegin = new MakeLibrary().getStringTree(this.keyWords); - if (frontbegin == null) { - return content; - } - char[] chars = content.toCharArray(); - // 正文 - StringBuilder sb = new StringBuilder(); - - WoodInterface head = this.frontbegin; - int start = 0; - int end = 1; - int index = 0; - boolean isBack = false; - int length = chars.length; - // 此处是正向最大匹配 - for (int i = 0; i < length; i++) { - index++; - head = head.get(Character.toLowerCase(chars[i])); - if (head == null) { - if (isBack) { - sb.append(tagBegin).append(chars, start, end).append(tagEnd); - start = start + end; - i = start - 1; - isBack = false; - } else { - sb.append(chars, start, end); - i = start; - start++; - } - head = this.frontbegin; - index = 0; - end = 1; - continue; - } - switch (head.getStatus()) { - case 1: - break; - case 2: - end = index; - isBack = true; - break; - case 3: - sb.append(tagBegin).append(chars, start, index).append(tagEnd); - start = start + index; - index = 0; - end = 1; - isBack = false; - head = this.frontbegin; - break; - } - } - - return sb.toString(); - } - - /** - * Get content without break lines - * - * @param content - * @return - */ - public String getTagContent(String content) { - return getTagContentWithBr(content, false); - } - - -// public static void main(String[] args) { -// String[] keyWords = {"智能POS"}; -// for (int i = 0; i < 1; i++) { -// String str = new TagWordUtils("", "").addKeyWords(keyWords) -// .getTagContent("智能pos真的好"); -// System.out.println(str); -// } -// } - -} - -class MakeLibrary { - - public MakeLibrary() { - } - - // 是否有下一个 - private static boolean hasNext = true; - // 是否是一个词 - private static boolean isWords = true; - - Iterator it = null; - - public Branch getStringTree(Set keyWords) { - it = keyWords.iterator(); - Branch head = new Branch('h', 0, 0); - Branch branch = head; - - while (it.hasNext()) { - /** - * 对于英文字母全部都全部转换成小写 - */ - char[] chars = it.next().toLowerCase().toCharArray(); - for (int i = 0; i < chars.length; i++) { - if (chars.length == (i + 1)) { - isWords = true; - hasNext = false; - } else { - isWords = false; - hasNext = true; - } - int status = 1; - if (isWords && hasNext) { - status = 2; - } - if (!isWords && hasNext) { - status = 1; - } - if (isWords && !hasNext) { - status = 3; - } - branch.add(new Branch(chars[i], status, 0)); - branch = (Branch) branch.get(chars[i]); - } - branch = head; - } - return head; - } -} - -interface WoodInterface { - public WoodInterface add(WoodInterface branch); - - public WoodInterface get(char c); - - public boolean contains(char c); - - public int compareTo(char c); - - public boolean equals(char c); - - public byte getStatus(); - - public char getC(); - - public void setStatus(int status); - - public byte getNature(); - - public void setNature(byte nature); -} - - -class Branch implements WoodInterface { - /** - * status 此字的状态1,继续 2,是个词语但是还可以继续 ,3确定 - * nature 词语性质 - * 0.未知 . 1是姓 . 2 是职位名称 3 是数量级的词 . 4 是数字词语 5 是标点 - */ - WoodInterface[] branches = new WoodInterface[0]; - private char c; - // 状态 - private byte status = 1; - // 索引 - private short index = -1; - // 词性 - private byte nature = 0; - // 单独查找出来的对象 - WoodInterface branch = null; - - public WoodInterface add(WoodInterface branch) { - if ((this.branch = this.get(branch.getC())) != null) { - switch (branch.getStatus()) { - case 1: - if (this.branch.getStatus() == 2) { - this.branch.setStatus(2); - } - if (this.branch.getStatus() == 3) { - this.branch.setStatus(2); - } - break; - case 2: - this.branch.setStatus(2); - case 3: - if (this.branch.getStatus() == 2) { - this.branch.setStatus(2); - } - if (this.branch.getStatus() == 1) { - this.branch.setStatus(2); - } - } - this.branch.setNature(branch.getNature()); - return this.branch; - } - index++; - if ((index + 1) > branches.length) { - branches = Arrays.copyOf(branches, index + 1); - } - branches[index] = branch; - AnsjArrays.sort(branches); - return branch; - } - - public Branch(char c, int status, int nature) { - this.c = c; - this.status = (byte) status; - this.nature = (byte) nature; - } - - int i = 0; - - public WoodInterface get(char c) { - int i = AnsjArrays.binarySearch(branches, c); - if (i > -1) { - return branches[i]; - } - return null; - } - - public boolean contains(char c) { - if (AnsjArrays.binarySearch(branches, c) > -1) { - return true; - } else { - return false; - } - } - - public int compareTo(char c) { - if (this.c > c) { - return 1; - } else if (this.c < c) { - return -1; - } else { - return 0; - } - } - - public boolean equals(char c) { - if (this.c == c) { - return true; - } else { - return false; - } - } - - @Override - public int hashCode() { - // TODO Auto-generated method stub - return c; - } - - public byte getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = (byte) status; - } - - public char getC() { - return this.c; - } - - public byte getNature() { - return nature; - } - - public void setNature(byte nature) { - this.nature = nature; - } - -} - -class AnsjArrays { - private static final int INSERTIONSORT_THRESHOLD = 7; - - /** - * 二分法查找.摘抄了jdk的东西..只不过把他的自动装箱功能给去掉了 - */ - public static int binarySearch(WoodInterface[] branches, char c) { - int high = branches.length - 1; - if (branches.length < 1) { - return high; - } - int low = 0; - while (low <= high) { - int mid = (low + high) >>> 1; - int cmp = branches[mid].compareTo(c); - - if (cmp < 0) { - low = mid + 1; - } else if (cmp > 0) { - high = mid - 1; - } else { - return mid; // key found - } - } - return -1; // key not found. - } - - public static void sort(WoodInterface[] a) { - WoodInterface[] aux = (WoodInterface[]) a.clone(); - mergeSort(aux, a, 0, a.length, 0); - } - - public static void sort(WoodInterface[] a, int fromIndex, int toIndex) { - rangeCheck(a.length, fromIndex, toIndex); - WoodInterface[] aux = copyOfRange(a, fromIndex, toIndex); - mergeSort(aux, a, fromIndex, toIndex, -fromIndex); - } - - private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) { - if (fromIndex > toIndex) { - throw new IllegalArgumentException("fromIndex(" + fromIndex - + ") > toIndex(" + toIndex + ")"); - } - if (fromIndex < 0) { - throw new ArrayIndexOutOfBoundsException(fromIndex); - } - if (toIndex > arrayLen) { - throw new ArrayIndexOutOfBoundsException(toIndex); - } - } - - private static void mergeSort(WoodInterface[] src, WoodInterface[] dest, int low, - int high, int off) { - int length = high - low; - - // Insertion sort on smallest arrays - if (length < INSERTIONSORT_THRESHOLD) { - for (int i = low; i < high; i++) - for (int j = i; j > low - && (dest[j - 1]).compareTo(dest[j].getC()) > 0; j--) - swap(dest, j, j - 1); - return; - } - - // Recursively sort halves of dest into src - int destLow = low; - int destHigh = high; - low += off; - high += off; - int mid = (low + high) >>> 1; - mergeSort(dest, src, low, mid, -off); - mergeSort(dest, src, mid, high, -off); - - // If list is already sorted, just copy from src to dest. This is an - // optimization that results in faster sorts for nearly ordered lists. - if (src[mid - 1].compareTo(src[mid].getC()) <= 0) { - System.arraycopy(src, low, dest, destLow, length); - return; - } - - // Merge sorted halves (now in src) into dest - for (int i = destLow, p = low, q = mid; i < destHigh; i++) { - if (q >= high || p < mid - && src[p].compareTo(src[q].getC()) <= 0) { - dest[i] = src[p++]; - } else { - dest[i] = src[q++]; - } - } - } - - /** - * Swaps x[a] with x[b]. - */ - private static void swap(WoodInterface[] x, int a, int b) { - WoodInterface t = x[a]; - x[a] = x[b]; - x[b] = t; - } - - public static T[] copyOfRange(T[] original, int from, int to) { - return copyOfRange(original, from, to, (Class) original.getClass()); - } - - public static T[] copyOfRange(U[] original, int from, int to, - Class newType) { - int newLength = to - from; - if (newLength < 0) { - throw new IllegalArgumentException(from + " > " + to); - } - T[] copy = ((Object) newType == (Object) Object[].class) ? (T[]) new Object[newLength] - : (T[]) Array - .newInstance(newType.getComponentType(), newLength); - System.arraycopy(original, from, copy, 0, Math.min(original.length - - from, newLength)); - return copy; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/component/wrapper/ResponseWrapper.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/component/wrapper/ResponseWrapper.java deleted file mode 100644 index 4f9f889..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/component/wrapper/ResponseWrapper.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.component.wrapper; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.enums.RTCodeEnum; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import com.google.common.base.Strings; - -import java.util.HashMap; -import java.util.List; - -public class ResponseWrapper { - - public static JSONObject buildResponse(RTCodeEnum codeEnum, String message, Object data) { - JSONObject result = new JSONObject(true); - result.put("code", codeEnum.getCode()); - if (!TStringUtils.isEmpty(message)) { - result.put("message", message); - } - result.put("desc", codeEnum.getDesc()); - if (!TObjectUtils.isNull(data)) { - result.put("data", data); - } - return result; - } - - public static JSONObject buildResponse(RTCodeEnum codeEnum, Object data) { - return buildResponse(codeEnum, null, data); - } - - public static JSONObject buildResponse(RTCodeEnum codeEnum, String message) { - return buildResponse(codeEnum, message, null); - } - - public static JSONObject buildResponse(RTCodeEnum codeEnum) { - return buildResponse(codeEnum, null, null); - } - - public static HashMap> buildHashResponse(RTCodeEnum codeEnum, String message) { - HashMap> hashMapResponse = new HashMap<>(1); - hashMapResponse.put((long) codeEnum.getCode(), null); - return hashMapResponse; - } - - public static JSONObject buildResponseWithKey(RTCodeEnum codeEnum, String message, Object data, String key) { - JSONObject result = new JSONObject(true); - result.put("code", codeEnum.getCode()); - if (!TStringUtils.isEmpty(message)) { - result.put("msg", message); - } - if (!TObjectUtils.isNull(data) && !Strings.isNullOrEmpty(key)) { - result.put(key, data); - } - return result; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/BookMark.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/BookMark.java deleted file mode 100644 index 69e8457..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/BookMark.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.entity.mysql; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import java.io.Serializable; - -@Entity -@Table(name = "cl_book_mark") -public class BookMark extends Model implements Serializable { - - private static final long serialVersionUID = -2077762992475568684L; - - @Column(name = "book_mark") - private String markName; - - public String getMarkName() { - return markName; - } - - public void setMarkName(String markName) { - this.markName = markName; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Channel.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Channel.java deleted file mode 100644 index d2e0c1c..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Channel.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.entity.mysql; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.persistence.Transient; -import java.io.Serializable; - -@Entity -@Table(name = "cl_channel") -public class Channel extends Model implements Serializable { - - private static final long serialVersionUID = -4246312514918925209L; - - @Column(name = "name") - private String name; - - @Column(name = "code") - private String code; - - @Transient - private Boolean status = false; - - public Boolean getStatus() { - return status; - } - - public void setStatus(Boolean status) { - this.status = status; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Model.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Model.java deleted file mode 100644 index 0be82e7..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/Model.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.entity.mysql; - -import org.apache.commons.lang3.builder.ToStringBuilder; - -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.MappedSuperclass; -import java.io.Serializable; - - -@MappedSuperclass -public abstract class Model implements Serializable { - - private static final long serialVersionUID = 2792083395861331755L; - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - protected Long id; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("id", id) - .toString(); - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SentimentModify.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SentimentModify.java deleted file mode 100644 index 72cda9f..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SentimentModify.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql; - - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import java.io.Serializable; -import java.util.Date; - -@Entity -@Table(name = "cl_sentiment") -public class SentimentModify extends Model implements Serializable { - - private static final long serialVersionUID = 8927418266148468982L; - - @Column(name = "token") - private String token; - @Column(name = "doc_id") - private String docId; - @Column(name = "doc_url") - private String url; - @Column(name = "sim_hash") - private String simHash; - @Column(name = "doc_type") - private String docType; - @Column(name = "originsentiment") - private String originSentiment; - @Column(name = "newsentiment") - private String newSentiment; - @Column(name = "update_time") - private String updateTime = new Date().toLocaleString(); - @Column(name = "doc_title") - private String title; - @Column(name = "content_abs") - private String contentAbstract; - @Column(name = "type") - private Integer type; - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - public String getDocId() { - return docId; - } - - public void setDocId(String docId) { - this.docId = docId; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String getSimHash() { - return simHash; - } - - public void setSimHash(String simHash) { - this.simHash = simHash; - } - - public String getDocType() { - return docType; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - public String getOriginSentiment() { - return originSentiment; - } - - public void setOriginSentiment(String originSentiment) { - this.originSentiment = originSentiment; - } - - public String getNewSentiment() { - return newSentiment; - } - - public void setNewSentiment(String newSentiment) { - this.newSentiment = newSentiment; - } - - public String getUpdateTime() { - return updateTime; - } - - public void setUpdateTime(String updateTime) { - this.updateTime = updateTime; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getContentAbstract() { - return contentAbstract; - } - - public void setContentAbstract(String contentAbstract) { - this.contentAbstract = contentAbstract; - } - - public Integer getType() { - return type; - } - - public void setType(Integer type) { - this.type = type; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SubjectModel.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SubjectModel.java deleted file mode 100644 index 907acf3..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/SubjectModel.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.entity.mysql; - -import org.apache.commons.lang3.builder.ToStringBuilder; - -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.MappedSuperclass; -import java.io.Serializable; -import java.math.BigInteger; - -@MappedSuperclass -public abstract class SubjectModel implements Serializable { - - private static final long serialVersionUID = -1969384421573693998L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - protected BigInteger id; - - public BigInteger getId() { - return id; - } - - public void setId(BigInteger id) { - this.id = id; - } - - @Override - public String toString() { - return new ToStringBuilder(this).append("id", id).toString(); - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/User.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/User.java deleted file mode 100644 index 2bb4c96..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/User.java +++ /dev/null @@ -1,322 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.entity.mysql; - -import org.apache.commons.lang3.builder.ToStringBuilder; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.persistence.Transient; -import java.io.Serializable; - -@Entity -@Table(name = "cl_user") -public class User extends Model implements Serializable { - - private static final long serialVersionUID = 1947459646071591960L; - - @Column(name = "token") - private String token; - - @Column(name = "user_group_id") - private Long userGroupId; - - @Column(name = "account") - private String account; - - @Column(name = "username") - private String userName; - - @Column(name = "password") - private String password; - - @Column(name = "parent_id") - private Long parentId; - - @Column(name = "email") - private String email; - - @Column(name = "wechat") - private String wechat; - - @Column(name = "wechat_id") - private String wechatId; - - // Y N - @Column(name = "wechat_verified") - private String wechatVerified; - @Column(name = "wechat_open_id") - private String wechatOpenId; - - @Column(name = "mobile") - private String mobile; - - @Column(name = "role_id") - private String roleId; - - @Column(name = "status") - private Integer status; - - @Column(name = "last_login_time") - private Long lastLoginTime; - - @Column(name = "company_id") - private Long companyId; - - @Column(name = "created_time") - private Long createdTime; - - @Column(name = "updated_time") - private Long updatedTime; - - @Column(name = "del") - private Boolean del; - - @Column(name = "is_shadow") - private Integer isShadow; - - @Transient - private Integer foreignChannelStatus; - - @Transient - private Boolean commentStatus; - - @Transient - private Integer cacheStatus; - - public Integer getCacheStatus() { - return cacheStatus; - } - - public void setCacheStatus(Integer cacheStatus) { - this.cacheStatus = cacheStatus; - } - - public User() { - } - - public Integer getForeignChannelStatus() { - return foreignChannelStatus; - } - - public void setForeignChannelStatus(Integer foreignChannelStatus) { - this.foreignChannelStatus = foreignChannelStatus; - } - - public Integer getIsShadow() { - return isShadow; - } - - public void setIsShadow(Integer isShadow) { - this.isShadow = isShadow; - } - - public Long getUserGroupId() { - return userGroupId; - } - - public void setUserGroupId(Long userGroupId) { - this.userGroupId = userGroupId; - } - - public String getUserName() { - return userName; - } - - public void setUserName(String userName) { - this.userName = userName; - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - - public String getAccount() { - return account; - } - - public void setAccount(String account) { - this.account = account; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public long getParentId() { - return parentId; - } - - public void setParentId(long parentId) { - this.parentId = parentId; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getWechat() { - return wechat; - } - - public void setWechat(String wechat) { - this.wechat = wechat; - } - - public String getWechatId() { - return wechatId; - } - - public void setWechatId(String wechatId) { - this.wechatId = wechatId; - } - - public String getMobile() { - return mobile; - } - - public void setMobile(String mobile) { - this.mobile = mobile; - } - - public String getRoleId() { - return roleId; - } - - public void setRoleId(String roleId) { - this.roleId = roleId; - } - - public void setStatus(Integer status) { - this.status = status; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public long getLastLoginTime() { - return lastLoginTime; - } - - public Long getCompanyId() { - return companyId; - } - - public void setCompanyId(Long companyId) { - this.companyId = companyId; - } - - public Long getCreatedTime() { - return createdTime; - } - - public void setCreatedTime(Long createdTime) { - this.createdTime = createdTime; - } - - public Long getUpdatedTime() { - return updatedTime; - } - - public void setUpdatedTime(Long updatedTime) { - this.updatedTime = updatedTime; - } - - public void setParentId(Long parentId) { - this.parentId = parentId; - } - - public void setLastLoginTime(Long lastLoginTime) { - this.lastLoginTime = lastLoginTime; - } - - public Boolean getDel() { - return del; - } - - public void setDel(Boolean del) { - this.del = del; - } - - public String getWechatVerified() { - return wechatVerified; - } - - public void setWechatVerified(String wechatVerified) { - this.wechatVerified = wechatVerified; - } - - public String getWechatOpenId() { - return wechatOpenId; - } - - public void setWechatOpenId(String wechatOpenId) { - this.wechatOpenId = wechatOpenId; - } - - public Boolean getCommentStatus() { - return commentStatus; - } - - public void setCommentStatus(Boolean commentStatus) { - this.commentStatus = commentStatus; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("token", token) - .append("account", account) - .append("userName", userName) - .append("password", password) - .append("parentId", parentId) - .append("email", email) - .append("wechat", wechat) - .append("wechatId", wechatId) - .append("wechatVerified", wechatVerified) - .append("wechatOpenId", wechatOpenId) - .append("mobile", mobile) - .append("roleId", roleId) - .append("status", status) - .append("lastLoginTime", lastLoginTime) - .append("companyId", companyId) - .append("commentStatus", commentStatus) - .append("createdTime", createdTime) - .append("updatedTime", updatedTime) - .append("del", del) - .toString(); - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseEntityModel.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseEntityModel.java deleted file mode 100644 index 597ccc0..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseEntityModel.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.base; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import org.apache.commons.lang3.builder.HashCodeBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import javax.persistence.*; -import java.util.Date; - -@MappedSuperclass -public class BaseEntityModel extends BaseModel { - - /** - * - */ - private static final long serialVersionUID = -6163675075289529459L; - /** - * 实体创建时间 - */ - @JsonIgnore - @Temporal(TemporalType.TIMESTAMP) - @Column(name = "date_created") - private Date dateCreated = new Date(); - - /** - * 实体修改时间 - */ - @JsonIgnore - @Temporal(TemporalType.TIMESTAMP) - @Column(name = "date_modified") - private Date dateModified = new Date(); - - /** - * 实体是否被删除 - */ - @Column(name = "DELETED") - protected Boolean deleted = false; - - /** - * 实体主键 - */ - @Id - @Column(name = "ID", nullable = false) - @GeneratedValue(strategy = GenerationType.IDENTITY) - private Long id; - - @Override - public boolean equals(Object obj) { - if (null != obj) { - if (obj instanceof BaseEntityModel) { - BaseEntityModel domain = (BaseEntityModel) obj; - if (this.id == domain.id) { - return true; - } - } - } - return false; - } - - public Date getDateCreated() { - return dateCreated; - } - - public Date getDateModified() { - return dateModified; - } - - public Long getId() { - return id; - } - - @Override - public int hashCode() { - if (this.id == null) { - this.id = 0L; - } - return HashCodeBuilder.reflectionHashCode(this.id); - } - - public Boolean isDeleted() { - return deleted; - } - - public void setDateCreated(Date dateCreated) { - this.dateCreated = dateCreated; - } - - public void setDateModified(Date dateModified) { - this.dateModified = dateModified; - } - - public void setDeleted(Boolean deleted) { - this.deleted = deleted; - } - - public void setId(Long id) { - this.id = id; - } - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this, - ToStringStyle.MULTI_LINE_STYLE); - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseModel.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseModel.java deleted file mode 100644 index ec6ed0d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseModel.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.base; - -import java.io.Serializable; - - -@SuppressWarnings("serial") -public abstract class BaseModel implements Serializable { - - /** - * Returns a multi-line String with key=value pairs. - * - * @return a String representation of this class. - */ - public abstract String toString(); - - /** - * Compares object equality. When using Hibernate, the primary key should - * not be a part of this comparison. - * - * @param o - * object to compare to - * @return true/false based on equality tests - */ - public abstract boolean equals(Object o); - - /** - * When you override equals, you should override hashCode. See "Why are - * equals() and hashCode() importation" for more information: - * http://www.hibernate.org/109.html - * - * @return hashCode - */ - public abstract int hashCode(); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseTreeEntityModel.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseTreeEntityModel.java deleted file mode 100644 index 465b49b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/base/BaseTreeEntityModel.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.base; - -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.fasterxml.jackson.annotation.JsonBackReference; -import com.fasterxml.jackson.annotation.JsonManagedReference; - -import javax.persistence.*; -import java.util.Collections; -import java.util.List; - -@SuppressWarnings("rawtypes") -@MappedSuperclass -public class BaseTreeEntityModel extends - BaseEntityModel implements Comparable{ - - private static final long serialVersionUID = -5961264427451119166L; - - @JsonManagedReference("parent-children") - @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.EAGER) - List children; - - @Transient - boolean leaf = true; - - @JsonBackReference("parent-children") - @ManyToOne - @JoinColumn(name = "PARENT_ID") - T parent; - - @Column(name = "TEXT") - String text; - - @Column(name = "sort") - private Integer sort; - - public boolean isLeaf() { - if(null != children && children.size() > 0) { - this.leaf = false; - } else { - this.leaf = true; - } - return leaf; - } - - public void setLeaf(boolean leaf) { - this.leaf = leaf; - } - - public Integer getSort() { - return sort; - } - - public void setSort(Integer sort) { - this.sort = sort; - } - - public List getChildren() { - if(TObjectUtils.isListEmpty(children)){ - return children; - }else{ - Collections.sort(children); - return children; - } - } - - public T getParent() { - return parent; - } - - public String getText() { - return text; - } - - public void setChildren(List children) { - this.children = children; - } - - public void setParent(T parent) { - this.parent = parent; - } - - public void setText(String text) { - this.text = text; - } - - /*** - * 组内按照 sort 升序排 - */ - @Override - public int compareTo(T o) { - if(this.sort > o.getSort()) - return 1; - else - return -1; - } - - /*@Override - public String toString() { - return ToStringBuilder.reflectionToString(this, - ToStringStyle.MULTI_LINE_STYLE, false); - }*/ - - /*@Override - public String toString() { - return "BaseTreeEntityModel{" + - "children=" + children + - ", leaf=" + leaf + - ", birthDate=" + birthDate + - ", parent=" + parent + - ", text='" + text + '\'' + - '}'; - }*/ -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/Cluster.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/Cluster.java deleted file mode 100644 index 76904ed..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/Cluster.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.cache; - -import com.bfd.mf.common.web.entity.mysql.Model; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import java.io.Serializable; - -/** - * Created by Shang Gaohui on 2017/12/26. - */ -@Entity -@Table(name = "cl_cluster") -public class Cluster extends Model implements Serializable, Comparable { - private static final long serialVersionUID = -2048927040596969768L; - - public String getEnvironment() { - return environment; - } - - public void setEnvironment(String environment) { - this.environment = environment; - } - - @Override - public int compareTo(Cluster o) { - if (this.getShardNum() >= o.getShardNum()) - return -1; - else - return 1; - } - - public static final class CLUSTER_TYPE { - /** - * 小集群 - */ - public static final int mini_cluster_type = 2; // 111 的ES 集群 专题索引 SQ_Mini - /** - * 大集群 - */ - public static final int normal_cluster_type = 0; // 109 的集群 日期索引 SQ_Normal -// /** -// * 缓存 -// */ -// // public static final int subject_cluster_type = 2; // -// -// /** -// * 微博转发 -// */ -// public static final int weibo_cluster_type = 4; // 147的ES 集群 (前台打标后)SQ_Mini -// -// public static final int reply_cluster_type = 7; // 已废弃 (原160的ES) -// /** -// * 2期数据分析 集群 -// */ -// public static final int data_analysis_cluster_type = 5; // 158 的ES 集群(后台打标后的数据) SQ_Reputation_new - -// /** -// * 对应索引以 cl_company_* -// */ -// public static final int data_company_analysis_cluster_type = 6; // 已废弃 (原160的ES) - } - - public static Long getClusterIdByType(SubjectCluster subjectCluster, int type) { - if (type == Cluster.CLUSTER_TYPE.mini_cluster_type) { - return subjectCluster.getMiniClusterId(); - } else if (type == Cluster.CLUSTER_TYPE.normal_cluster_type) { - return subjectCluster.getNormalClusterId(); -// } else if (type == Cluster.CLUSTER_TYPE.subject_cluster_type) { -// return subjectCluster.getClusterId(); - } - return null; - } - - @Column(name = "ip") - private String ip; - - @Column(name = "tcp_port") - private String tcpPort; - - @Column(name = "http_port") - private String httpPort; - - public Long getIndexTemplateId() { - return indexTemplateId; - } - - public void setIndexTemplateId(Long indexTemplateId) { - this.indexTemplateId = indexTemplateId; - } - - @Column(name = "index_template_id") - private Long indexTemplateId; - - public String getPrefixIndexPattern() { - return prefixIndexPattern; - } - - public void setPrefixIndexPattern(String prefixIndexPattern) { - this.prefixIndexPattern = prefixIndexPattern; - } - - @Column(name = "prefix_index_pattern") - private String prefixIndexPattern; - - @Column(name = "cluster_name") - private String clusterName; - - @Column(name = "shard_num") - private Integer shardNum; - - @Column(name = "type") - private Integer type; - - @Column(name = "environment") - private String environment; - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - public String getTcpPort() { - return tcpPort; - } - - public void setTcpPort(String tcpPort) { - this.tcpPort = tcpPort; - } - - public String getHttpPort() { - return httpPort; - } - - public void setHttpPort(String httpPort) { - this.httpPort = httpPort; - } - - public String getClusterName() { - return clusterName; - } - - public void setClusterName(String clusterName) { - this.clusterName = clusterName; - } - - public Integer getShardNum() { - return shardNum; - } - - public void setShardNum(Integer shardNum) { - this.shardNum = shardNum; - } - - public Integer getType() { - return type; - } - - public void setType(Integer type) { - this.type = type; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/SubjectCluster.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/SubjectCluster.java deleted file mode 100644 index 28eb82f..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/cache/SubjectCluster.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.cache; - -import com.bfd.mf.common.web.entity.mysql.Model; -import com.fasterxml.jackson.annotation.JsonIgnore; - -import javax.persistence.*; -import java.io.Serializable; -import java.math.BigInteger; -import java.util.Date; - -/** - * Created by Shang Gaohui on 2017/12/26. - */ -@Entity -@Table(name = "cl_subject_cluster") -public class SubjectCluster extends Model implements Serializable { - private static final long serialVersionUID = 4886257870671839342L; - - public SubjectCluster(){ - - } - - public Date getDateCreated() { - return dateCreated; - } - - public void setDateCreated(Date dateCreated) { - this.dateCreated = dateCreated; - } - - /** - * 实体创建时间 - * dj - 2020-01-10 - */ - @JsonIgnore - @Temporal(TemporalType.TIMESTAMP) - @Column(name = "date_created") - protected Date dateCreated = new Date(); - - public SubjectCluster(BigInteger subjectId, Long clusterId, Long miniClusterId, Long normalClusterId,String indexName) { - this.subjectId = subjectId; - this.clusterId = clusterId; - this.miniClusterId = miniClusterId; - this.normalClusterId = normalClusterId; - this.indexName = indexName; - } - - @Column(name = "subject_id") - private BigInteger subjectId; - - @Column(name = "cluster_id") - private Long clusterId; - - @Column(name = "index_name") - private String indexName; - - @Column(name = "mini_cluster_id") - private Long miniClusterId; - - @Column(name = "normal_cluster_id") - private Long normalClusterId; - - @Override - public String toString() { - return "SubjectCluster{" + - "dateCreated=" + dateCreated + - ", subjectId=" + subjectId + - ", clusterId=" + clusterId + - ", miniClusterId=" + miniClusterId + - ", indexName='" + indexName + '\'' + - ", normalClusterId=" + normalClusterId + - '}'; - } - - public Long getNormalClusterId() { - return normalClusterId; - } - - public void setNormalClusterId(Long normalClusterId) { - this.normalClusterId = normalClusterId; - } - - public BigInteger getSubjectId() { - return subjectId; - } - - public void setSubjectId(BigInteger subjectId) { - this.subjectId = subjectId; - } - - public Long getClusterId() { - return clusterId; - } - - public void setClusterId(Long clusterId) { - this.clusterId = clusterId; - } - - public Long getMiniClusterId() { - return miniClusterId; - } - - public void setMiniClusterId(Long miniClusterId) { - this.miniClusterId = miniClusterId; - } - - public String getIndexName() { - return indexName; - } - - public void setIndexName(String indexName) { - this.indexName = indexName; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/report/MainSourceEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/report/MainSourceEntity.java deleted file mode 100644 index fa9cd35..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/report/MainSourceEntity.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.report; - -import com.bfd.mf.common.web.entity.mysql.Model; -import lombok.NoArgsConstructor; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; - -@NoArgsConstructor -@Entity -@Table(name = "cl_main_source") -public class MainSourceEntity extends Model { - - public String getDocTypeEn() { - return docTypeEn; - } - - public void setDocTypeEn(String docTypeEn) { - this.docTypeEn = docTypeEn; - } - - public String getDocTypeCn() { - return docTypeCn; - } - - public void setDocTypeCn(String docTypeCn) { - this.docTypeCn = docTypeCn; - } - - public String getSource() { - return source; - } - - public void setSource(String source) { - this.source = source; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public Long getCompanyId() { - return companyId; - } - - public void setCompanyId(Long companyId) { - this.companyId = companyId; - } - - public Long getLastUpdateTime() { - return lastUpdateTime; - } - - public void setLastUpdateTime(Long lastUpdateTime) { - this.lastUpdateTime = lastUpdateTime; - } - - public Long getLastUpdateUser() { - return lastUpdateUser; - } - - public void setLastUpdateUser(Long lastUpdateUser) { - this.lastUpdateUser = lastUpdateUser; - } - - @Column(name = "doc_type_en") - private String docTypeEn; - - @Column(name = "doc_type_cn") - private String docTypeCn; - - @Column(name = "source") - private String source; - - @Column(name = "last_update_time") - private Long lastUpdateTime; - - @Column(name = "last_update_user") - private Long lastUpdateUser; - - @Column(name = "status") - private int status; - - @Column(name = "company_id") - private Long companyId; - - @Override - public String toString() { - return "MainSourceEntity{" + - "docTypeEn='" + docTypeEn + '\'' + - ", docTypeCn='" + docTypeCn + '\'' + - ", source='" + source + '\'' + - ", lastUpdateTime='" + lastUpdateTime + '\'' + - ", lastUpdateUser='" + lastUpdateUser + '\'' + - ", status=" + status + - ", companyId=" + companyId + - '}'; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/topic/Subject.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/topic/Subject.java deleted file mode 100644 index 50e939b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/entity/mysql/topic/Subject.java +++ /dev/null @@ -1,425 +0,0 @@ -package com.bfd.mf.common.web.entity.mysql.topic; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.enums.CacheEnums; -import com.bfd.mf.common.web.entity.mysql.SubjectModel; -import com.fasterxml.jackson.annotation.JsonIgnore; -import org.apache.commons.lang3.builder.ToStringBuilder; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.persistence.Transient; -import java.io.Serializable; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -@Entity -@Table(name = "cl_subject") -public class Subject extends SubjectModel implements Serializable { - private static final long serialVersionUID = 1066084624308428301L; - - @Column(name = "name") - private String name; - - @Column(name = "node_type") - private Integer nodeType; - - @Column(name = "keywords_type") - private Integer keywordsType; - - @Column(name = "simple_content") - private String simpleContent; - - @Column(name = "relation_content") - private String relationContent; - - @Column(name = "expert_content") - private String expertContent; - - @Column(name = "exclude_content") - private String excludeContent; - - @Column(name = "channels") - private String channels; - - @Column(name = "create_time") - private Long createTime = System.currentTimeMillis(); - - @Column(name = "update_time") - private Long updateTime = System.currentTimeMillis(); - - @Column(name = "kw_expression") - private String kwExpression; - - @JsonIgnore - @Column(name = "es_query") - private String esQuery; - - @Column(name = "creator") - private String creator; - @Column(name = "company_id") - private Long companyId; - @Column(name = "subject_back_date") - private BigInteger subjectBackDate = BigInteger.valueOf(System.currentTimeMillis()); - @Transient - private Long companyBackDate; - @Transient - private boolean isExistWarning = false; - - public boolean isExistWarning() { - return isExistWarning; - } - - public void setExistWarning(boolean existWarning) { - isExistWarning = existWarning; - } - - public Long getCompanyBackDate() { - return companyBackDate; - } - - public void setCompanyBackDate(Long companyBackDate) { - this.companyBackDate = companyBackDate; - } - - public BigInteger getSubjectBackDate() { - return subjectBackDate; - } - - public void setSubjectBackDate(BigInteger subjectBackDate) { - this.subjectBackDate = subjectBackDate; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Integer getNodeType() { - return nodeType; - } - - public void setNodeType(Integer nodeType) { - this.nodeType = nodeType; - } - - public Integer getKeywordsType() { - return keywordsType; - } - - public void setKeywordsType(Integer keywordsType) { - this.keywordsType = keywordsType; - } - - public String getSimpleContent() { - return simpleContent; - } - - public void setSimpleContent(String simpleContent) { - this.simpleContent = simpleContent; - } - - public String getRelationContent() { - return relationContent; - } - - public JSONArray getRelationContentArray() { - if (relationContent == null) { - return null; - } - return JSONObject.parseArray(relationContent); - } - - public void setRelationContent(String relationContent) { - this.relationContent = relationContent; - } - - public String getExpertContent() { - return expertContent; - } - - public void setExpertContent(String expertContent) { - this.expertContent = expertContent; - } - - public String getCreator() { - return creator; - } - - public void setCreator(String creator) { - this.creator = creator; - } - - public String getExcludeContent() { - return excludeContent; - } - - public void setExcludeContent(String excludeContent) { - this.excludeContent = excludeContent; - } - - public String getChannels() { - return channels; - } - - public JSONObject getChannelsJson() { - if (channels == null) { - return null; - } - return JSONObject.parseObject(channels); - } - - public void setChannels(String channels) { - this.channels = channels; - } - - public Long getCreateTime() { - return createTime; - } - - public void setCreateTime(Long createTime) { - this.createTime = createTime; - } - - public Long getUpdateTime() { - return updateTime; - } - - public void setUpdateTime(Long updateTime) { - this.updateTime = updateTime; - } - - public String getEsQuery() { - return esQuery; - } - - public void setEsQuery(String esQuery) { - this.esQuery = esQuery; - } - - public String getKwExpression() { - return kwExpression; - } - - public void setKwExpression(String kwExpression) { - this.kwExpression = kwExpression; - } - - public Long getCompanyId() { - return companyId; - } - - public void setCompanyId(Long companyId) { - this.companyId = companyId; - } - - @Transient - private List userIdList = new ArrayList<>(); - - public List getUserIdList() { - return userIdList; - } - - public void setUserIdList(List userIdList) { - this.userIdList = userIdList; - } - - @Override - public boolean equals(Object other) { - if (null == other || !(other instanceof Subject)) { - return false; - } - if (this == other) { - return true; - } - BigInteger thisId = this.getId(); - BigInteger otherId = ((Subject) other).getId(); - if (null != thisId && null != otherId && thisId.longValue() == otherId.longValue()) { - return true; - } - return false; - } - - // 缓存相关 - @Column(name = "cache_start") - private Long cacheStart; - - @Column(name = "cache_end") - private Long cacheEnd; - - @Column(name = "cache_refresh_time") - private Long cacheRefreshTime; - - @Column(name = "cache_recalculate_time") - private Long cacheRecalculateTime; - - @Column(name = "cache_refresh_status") - private Integer cacheRefreshStatus = CacheEnums.CacheRefreshStatus.stable.getCode(); - - @Column(name = "cache_recalculate_status") - private Integer cacheRecalculateStatus = CacheEnums.CacheRecalculateStatus.stable.getCode(); - - @Column(name = "keywords") - private String keywords; - - @Column(name = "create_time_last") - private Long createTimeLast = System.currentTimeMillis(); - - @Column(name = "if_update") - private Integer ifUpdate = CacheEnums.UpdateSubject.no.getCode(); - - @Column(name = "update_num_left") - private Integer updateNumLeft = CacheEnums.UpdateSubjectNumLeft; - - @Transient - private Integer companyRealQueryDays; - @Transient - private String token; - - /** - * 已选择的站点 - */ - @Transient -// private List chooseWebsiteList; -// -// public List getChooseWebsiteList() { -// return chooseWebsiteList; -// } -// public void setChooseWebsiteList(List chooseWebsiteList) { -// this.chooseWebsiteList = chooseWebsiteList; -// } - - public Integer getCompanyRealQueryDays() { - return companyRealQueryDays; - } - - public void setCompanyRealQueryDays(Integer companyRealQueryDays) { - this.companyRealQueryDays = companyRealQueryDays; - } - - public String getToken() { - return creator; - } - - public void setToken(String token) { - this.token = token; - } - - public Long getCacheStart() { - return cacheStart; - } - - public void setCacheStart(Long cacheStart) { - this.cacheStart = cacheStart; - } - - public Long getCacheEnd() { - return cacheEnd; - } - - public void setCacheEnd(Long cacheEnd) { - this.cacheEnd = cacheEnd; - } - - public Long getCacheRefreshTime() { - return cacheRefreshTime; - } - - public void setCacheRefreshTime(Long cacheRefreshTime) { - this.cacheRefreshTime = cacheRefreshTime; - } - - public Long getCacheRecalculateTime() { - return cacheRecalculateTime; - } - - public void setCacheRecalculateTime(Long cacheRecalculateTime) { - this.cacheRecalculateTime = cacheRecalculateTime; - } - - public Integer getCacheRefreshStatus() { - return cacheRefreshStatus; - } - - public void setCacheRefreshStatus(Integer cacheRefreshStatus) { - this.cacheRefreshStatus = cacheRefreshStatus; - } - - public Integer getCacheRecalculateStatus() { - return cacheRecalculateStatus; - } - - public void setCacheRecalculateStatus(Integer cacheRecalculateStatus) { - this.cacheRecalculateStatus = cacheRecalculateStatus; - } - - public String getKeywords() { - return keywords; - } - - public void setKeywords(String keywords) { - this.keywords = keywords; - } - - public Long getCreateTimeLast() { - return createTimeLast; - } - - public void setCreateTimeLast(Long createTimeLast) { - this.createTimeLast = createTimeLast; - } - - public Integer getIfUpdate() { - return ifUpdate; - } - - public void setIfUpdate(Integer ifUpdate) { - this.ifUpdate = ifUpdate; - } - - public Integer getUpdateNumLeft() { - return updateNumLeft; - } - - public void setUpdateNumLeft(Integer updateNumLeft) { - this.updateNumLeft = updateNumLeft; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("id", id) - .append("name", name) - .append("nodeType", nodeType) - .append("keywordsType", keywordsType) - .append("simpleContent", simpleContent) - .append("relationContent", relationContent) - .append("expertContent", expertContent) - .append("excludeContent", excludeContent) - .append("channels", channels) - .append("createTime", createTime) - .append("updateTime", updateTime) - .append("esQuery", esQuery) - .append("creator", creator) - .append("cacheStart", cacheStart) - .append("cacheEnd", cacheEnd) - .append("cacheRefreshTime", cacheRefreshTime) - .append("cacheRecalculateTime", cacheRecalculateTime) - .append("cacheRefreshStatus", cacheRefreshStatus) - .append("cacheRecalculateStatus", cacheRecalculateStatus) - .append("keywords", keywords) - .append("createTimeLast", createTimeLast) - .append("ifUpdate", ifUpdate) - .append("updateNumLeft", updateNumLeft) - .append("kwExpression", kwExpression) - .append("userIdList", userIdList) - .toString(); - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/BookMarkRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/BookMarkRepository.java deleted file mode 100644 index 42e022c..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/BookMarkRepository.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.repository.mysql; - - -import com.bfd.mf.common.web.entity.mysql.BookMark; -import org.springframework.data.repository.CrudRepository; -import org.springframework.stereotype.Repository; - -import java.util.List; - -@Repository -public interface BookMarkRepository extends CrudRepository { - List findAll(); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/SentimentRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/SentimentRepository.java deleted file mode 100644 index 6026576..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/SentimentRepository.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql; - -import com.bfd.mf.common.web.entity.mysql.SentimentModify; -import org.springframework.data.jpa.repository.Query; -import org.springframework.data.repository.PagingAndSortingRepository; -import org.springframework.stereotype.Repository; - -@Repository -public interface SentimentRepository extends PagingAndSortingRepository{ - - @Query(value = "select * from cl_sentiment where doc_id =?1",nativeQuery = true) - SentimentModify findByUniqueId(String docId); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/UserRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/UserRepository.java deleted file mode 100644 index c4d19e1..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/UserRepository.java +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.repository.mysql; - -import com.bfd.mf.common.web.entity.mysql.User; -import org.springframework.data.jpa.repository.Query; -import org.springframework.data.repository.PagingAndSortingRepository; -import org.springframework.data.repository.query.Param; -import org.springframework.stereotype.Repository; - -@Repository -public interface UserRepository extends PagingAndSortingRepository { - -// User findByUserNameAndDel(String userName, Boolean del); -// -// List findByAccountAndDel(String account, Boolean del); -// -// -// @Query(value = "SELECT * FROM cl_user WHERE del = FALSE AND status = 1 AND account = ?1 ", nativeQuery = true) -// User findAvailableByAccount(String account); -// -// @Query(value = "SELECT * FROM cl_user WHERE del = FALSE AND account = ?1 ", nativeQuery = true) -// User findUserByAccount(String account); -// -// User findByUserNameAndPasswordAndDel(String userName, String pwd, Boolean del); -// -// User findByAccountAndPasswordAndDel(String account, String pwd, Boolean del); -// -// User findByCompanyIdAndUserNameAndDel(Long companyId, String userName, Boolean del); -// -// User findByCompanyIdAndAccountAndDel(Long companyId, String account, Boolean del); - - User findByTokenAndDel(String token, Boolean del); - -// @Query(value = "SELECT * FROM cl_user WHERE token = ?1 AND status = ?2", nativeQuery = true) -// User findByTokenAndStatus(String token, int status); -// -// User findByTokenAndStatusAndDel(String token, int status, Boolean del); - - @Query(value = "SELECT company_id FROM cl_user WHERE token = :token AND del = :del", nativeQuery = true) - Long getCompanyIdByTokenAndDel(@Param("token") String token, @Param("del") Boolean del); - - -// @Query("select u from User u where u.roleId =?1 or u.roleId like '?1,%' or u.roleId like '%,?1' or u.roleId like " + -// "'%,?1,%' and del = false") -// List findByRoleId(String rid); -// -// List findByStatusAndCompanyIdAndDel(Integer status, Long companyId, Boolean del); -// -// List findByCompanyIdAndDel(Long companyId, Boolean del); -// -// -// /** -// * Get all users with role and creator information -// * -// * @param companyId -// * @return -// */ -// @Query(value = "SELECT " + -// "a.id , " + -// "a.token , " + -// "a.account , " + -// "a.userName , " + -// "r.id AS roleId , " + -// "r.name as roleName, " + -// "b.userName AS creator, " + -// "a.status, " + -// "a.email, " + -// "a.wechat, " + -// "a.wechatId, " + -// "a.mobile, " + -// "a.wechatVerified, " + -// "a.wechatOpenId " + -// "FROM " + -// "User a , " + -// "User b , " + -// "Role r " + -// "WHERE a.companyId = b.companyId " + -// "AND a.companyId = :cid " + -// "AND a.parentId = b.id " + -// "AND a.roleId = r.id " + -// "AND a.userName like :name " + -// "AND (a.del IS NULL OR a.del = false)" + -// "AND a.wechat IS NOT NULL " + -// "AND a.wechatId is NOT NULL " + -// "AND a.wechat <> '' " + -// "AND a.wechatId <> '' " + -// "AND a.wechatVerified in (:scope) " + -// "order by a.createdTime desc") -// Page findClientUserWeixinList(@Param("cid") Long companyId, @Param("name") String filterName, Pageable -// pageable, @Param("scope") List scope); -// -// -// /** -// * Get all users with role and creator information -// * -// * @param companyId -// * @return -// */ -// @Query(value = "SELECT " + -// "a.id , " + -// "a.token , " + -// "a.account , " + -// "a.userName , " + -// "r.id AS roleId , " + -// "r.name as roleName, " + -// "b.userName AS creator, " + -// "a.status, " + -// "a.email, " + -// "a.wechat, " + -// "a.wechatId, " + -// "a.mobile " + -// "FROM " + -// "User a , " + -// "User b , " + -// "Role r " + -// "WHERE a.companyId = b.companyId " + -// "AND a.companyId = :cid " + -// "AND a.parentId = b.id " + -// "AND a.roleId = r.id " + -// "AND a.userName like :name " + -// "AND (a.del IS NULL OR a.del = false)" + -// "AND a.email IS NOT NULL " + -// "AND a.email <> '' " + -// "order by a.createdTime desc") -// Page findClientUserEmailList(@Param("cid") Long companyId, @Param("name") String filterName, Pageable -// pageable); -// -// @Modifying -// @Query("update User set status = ?2, updatedTime = ?3 where id = ?1") -// int switchUserStatus(Long userId, Integer status, Long updateTime); -// -// @Modifying -// @Query("update User set del = ?2, updatedTime = ?3 where id = ?1") -// int deleteUser(Long userId, Boolean isDel, Long updateTime); -// -// -//// @Query("SELECT " + -//// "a.id ," + -//// "a.account , " + -//// "a.userName, " + -//// "a.email, " + -//// "a.wechat, " + -//// "a.wechatId, " + -//// "a.mobile, " + -//// "r.id AS userGroupId , " + -//// "r.name as userGroupName, " + -//// "a.status, " + -//// "a.createdTime " + -//// "FROM " + -//// "User a , " + -//// "UserGroup r " + -//// "WHERE a.id = :uid " + -//// "AND a.userGroupId = r.id " + -//// "AND (a.del = :isDel ) " + -//// "order by a.createdTime desc") -//// List fetchUser(@Param("uid") Long userId, @Param("isDel") Boolean isDel); -// -// -// /** -// * Check if reach user create limitation, return Y if avaliable -// *

-// * Return NULL if not available -// * -// * @param token -// * @return -// */ -// @Query(value = "SELECT \"Y\" AS VALID " + -// "FROM " + -// " (SELECT company_user_count AS u_limit " + -// " FROM cl_company " + -// " WHERE status = 1 " + -// " AND id = " + -// " (SELECT company_id " + -// " FROM cl_user " + -// " WHERE token = ?1)) a, " + -// " (SELECT count(1) AS u_count " + -// " FROM cl_user " + -// " WHERE company_id = " + -// " (SELECT company_id " + -// " FROM cl_user " + -// " WHERE token = ?1) " + -// " AND del = FALSE) b " + -// "WHERE a.u_limit >= b.u_count", nativeQuery = true) -// List checkIfUserLimitReached(String token); -// -// /** -// * Check if user over dead date and open status, return true if available -// *

-// * Return false if not available -// * -// * @param token -// * @return -// */ -// @Query(value = -// " SELECT \"Y\" AS flag " + -// " FROM cl_company " + -// " WHERE status = 1 " + -// " AND deadline_time < UNIX_TIMESTAMP() " + -// " AND id = " + -// " (SELECT company_id " + -// " FROM cl_user " + -// " WHERE token = ?1 and del = false and status = 1)", nativeQuery = true) -// List checkIfUserOverDeadDate(String token); -// -// /** -// * 返回话题上限数 -// *

-// * SELECT company_topic_count FROM cl_company -// * WHERE id=(SELECT company_id FROM cl_user WHERE token = '8FB24E550815BCBA') -// * -// * @param token -// * @return -// */ -// @Query(value = -// " SELECT company_topic_count " + -// " FROM cl_company " + -// " WHERE id = " + -// " (SELECT company_id" + -// " FROM cl_user " + -// " WHERE token = ?1)", nativeQuery = true) -// int getCompanyTopicCount(String token); -// -// /** -// * 返回创建话题的ids -// * -// * @param token -// * @return -// */ -// @Query(value = -// " SELECT topic_ids" + -// " FROM cl_role " + -// " WHERE company_id = " + -// " (SELECT company_id" + -// " FROM cl_user " + -// " WHERE token = ?1) ", nativeQuery = true) -// List getSujectIds(String token); -// -// /** -// * 返回客户创建的话题总数的结果 -// *

-// * SELECT COUNT(DISTINCT(label_id)) FROM mf_subject -// * WHERE label_id IN( -// * SELECT topic_ids FROM mf_role -// * WHERE company_id ='14') -// * -// * @param labelIds -// * @return -// */ -// @Query(value = -// " SELECT count(1) " + -// " FROM cl_subject " + -// " WHERE label_id IN " + -// " (?1)", nativeQuery = true) -// int getCompanyResult(Set labelIds); -// -// @Query("select u from User u, Role r " + -// "where u.roleId = r.id and u.companyId =:cid and " + -// "r.isSystem >= (select r2.isSystem from Role r2 where r2.id = :rid) and u.del = false") -// List getUserListByCompanyAndRole(@Param("cid") Long companyId, @Param("rid") Long roleId); -// -// @Query("select " + -// "u.account," + -// "wu.openId," + -// "wu.subscribe," + -// "wu.nickName," + -// "wu.sex," + -// "wu.language," + -// "wu.city," + -// "wu.province," + -// "wu.headimgUrl," + -// "wu.subscribeTime," + -// "wu.unionId," + -// "wu.remark," + -// "wu.grouId," + -// "wu.tagIdList," + -// "wu.mfRemark " + -// "from User u, Role r, WechatBind wb, WechatUser wu " + -// "where u.roleId = r.id and u.companyId =:cid and u.id = wb.userId and wb.openId = wu.openId and " + -// "r.isSystem >= (select r2.isSystem from Role r2 where r2.id = :rid) and u.del = false") -// List getUserInfoListByCompanyAndRole(@Param("cid") Long companyId, @Param("rid") Long roleId); -// -// @Query(value = "select * from cl_user where id =?1", nativeQuery = true) -// User getUserById(long creator); -// -// /** -// * 返回客户ID -// * -// * @param token -// * @return -// */ -// @Query(value = "select company_id from cl_user where token =?1", nativeQuery = true) -// Integer findCompanyIdByToken(String token); -// -// /** -// * 返回有效客户 -// * -// * @param id -// * @param flag -// * @return -// */ -// @Query(value = "SELECT token FROM cl_user WHERE company_id=?1 AND del=?2", nativeQuery = true) -// List findTokenByCompanyId(Long id, boolean flag); -// -// @Query(value = "SELECT token FROM cl_user WHERE company_id =?1 AND del=?2 AND STATUS=?3 limit 1", nativeQuery = true) -// String findEffectTokenByCompanyIdAndDel(Long companyId, boolean del, int status); -// -// @Query(value = -// "select company_id " + -// "from cl_user " + -// "where token = ?1 and del=?2", nativeQuery = true) -// Long findCompanyIdByTokenAndDel(String token, boolean del); -// -// @Query(value = "SELECT account FROM cl_user WHERE email=?1 AND status=?2", nativeQuery = true) -// String fetchUserOfAccountByReceiverAndStatus(String receiver, int status); -// -// @Query(value = -// " SELECT company_keyword_count " + -// " FROM cl_company " + -// " WHERE id = " + -// " (SELECT company_id" + -// " FROM cl_user " + -// " WHERE token = ?1)", nativeQuery = true) -// int getCompanyKeywordCount(String token); -// -// @Query(value = "SELECT company_exclude_count FROM cl_company WHERE id = (SELECT company_id FROM cl_user WHERE token = ?1)", nativeQuery = true) -// int getCompanyExcludeCount(String token); -// -// @Query(value = "SELECT role_id FROM cl_user WHERE token = :token AND del = :del", nativeQuery = true) -// String getRoleIdByTokenAndDel(@Param("token") String token, @Param("del") Boolean del); -// -// /** -// * Get all users with role and creator information -// * -// * @param companyId -// * @return -// */ -// @Query(value = "SELECT " + -// "a.id , " + -// "a.account , " + -// "a.userName , " + -// "r.id AS userGroupId , " + -// "r.name as userGroupName, " + -// //"b.userName AS creator, " + -// " (case when a.parentId = 0 then '系统' when m.roleType = 1 then '管理员' else b.account end ) AS creator , " + -// "a.status, " + -// "a.email, " + -// "a.wechat, " + -// "a.wechatId, " + -// "a.mobile, " + -// "a.createdTime, "+ -// "r.roleType "+ -// "FROM " + -// "User a , " + -// "User b , " + -// "UserGroup m , " + -// "UserGroup r " + -// "WHERE " + -// //"a.companyId = b.companyId " + -// " a.companyId = :cid " + -// "AND a.userGroupId = r.id " + -// "AND a.userGroupId = :ugid " + -// "AND b.userGroupId = m.id " + -// "AND a.parentId = b.id " + -// "AND a.isShadow <> :isShadow " + -// //"AND a.roleId = r.id " + -// "AND (a.userName like :name or a.account like :name) " + -// "AND (a.del = :isDel) " + -// "order by a.createdTime desc" ) -// Page findClientUserListByGroupId(@Param("cid") Long companyId, @Param("name") String filterName, Pageable pageable, @Param("ugid") Long userGroupId, @Param("isDel") Boolean isDel, @Param("isShadow") Integer isShadow); -// -// @Query(value = "SELECT * FROM cl_user WHERE account = ?1", nativeQuery = true) -// User findByAccount(String account); -// -// @Query(value = "SELECT * FROM cl_user WHERE user_group_id = ?1 and del = ?2", nativeQuery = true) -// List findByUserGroupId(String userGroupId, Boolean del); -// -// @Query(value = "SELECT token FROM cl_user WHERE id IN (?1)", nativeQuery = true) -// List getTokenListByIdList(List idList); -// -// @Query(value = "SELECT id FROM cl_user WHERE token IN (?1)", nativeQuery = true) -// List getIdListByTokenList(List tokenList); -// -// @Query(value = "SELECT " + -// "a.id , " + -// "a.account , " + -// "a.userName , " + -// "r.id AS userGroupId , " + -// "r.name as userGroupName, " + -// // "b.userName AS creator, " + -// " (case when a.parentId = 0 then '系统' when m.roleType = 1 then '管理员' else b.account end ) AS creator , " + -// "a.status, " + -// "a.email, " + -// "a.wechat, " + -// "a.wechatId, " + -// "a.mobile, " + -// "a.createdTime, " + -// "r.roleType " + -// "FROM " + -// "User a , " + -// "User b , " + -// "UserGroup m , " + -// "UserGroup r " + -// "WHERE " + -// //"a.companyId = b.companyId " + -// "a.companyId = :cid " + -// "AND a.parentId = b.id " + -// "AND a.userGroupId = r.id " + -// "AND b.userGroupId = m.id " + -// "AND a.isShadow <> :isShadow " + -// "AND r.roleType not in :ugrt " + -// "AND (a.userName like :name or a.account like :name) " + -// "AND (a.del = :isDel ) " + -// "order by a.createdTime desc") -// Page findClientUserListFilterByRole(@Param("cid") Long companyId, -// @Param("name") String filterName, -// Pageable pageable, -// @Param("isDel") Boolean isDel, -// @Param("ugrt") List userGroupRoleType, -// @Param("isShadow") Integer isShadow); - -// @Query(value = "SELECT id,account,user_group_id FROM cl_user WHERE company_id = ?1 and del = ?2 ORDER BY created_time DESC ", nativeQuery = true) -// List findAllByCompanyId(Long companyId, boolean del); -// -// @Query(value = "SELECT * FROM cl_user WHERE id = ?1 AND status = ?2 AND del = ?3", nativeQuery = true) -// User findByIdAndStatusAndDel(Long userId, Integer userNormal, Boolean userNotDelete); -// -// @Query(value = "SELECT * FROM cl_user WHERE token = ?1 ", nativeQuery = true) -// User findBytoken(String creator); - -// @Query("SELECT " + -// "a.id ," + -// "a.account , " + -// "a.userName, " + -// "a.email, " + -// "a.wechat, " + -// "a.wechatId, " + -// "a.mobile, " + -// "r.id AS userGroupId , " + -// "r.name as userGroupName, " + -// "a.status, " + -// "a.createdTime, " + -// "a.password " + -// "FROM " + -// "User a , " + -// "UserGroup r " + -// "WHERE a.token = :token " + -// "AND a.userGroupId = r.id " + -// "AND (a.del = :isDel ) " + -// "order by a.createdTime desc") -// List fetchUserByTokenAndDel(@Param("token") String token, @Param("isDel") Boolean userNotDelete); - -// @Query(value = "select g.channel_ids from cl_user u, cl_user_group g where u.token = ?1 AND g.id = u.user_group_id ", nativeQuery = true) -// String getChannelIdsByToken(String token); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericDao.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericDao.java deleted file mode 100644 index bb8bdff..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericDao.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql.base; - -import com.bfd.mf.common.web.entity.mysql.base.BaseEntityModel; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.data.jpa.repository.JpaSpecificationExecutor; -import org.springframework.data.repository.NoRepositoryBean; - -import java.io.Serializable; - -@NoRepositoryBean -public interface GenericDao - extends JpaRepository, JpaSpecificationExecutor { -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericTreeDao.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericTreeDao.java deleted file mode 100644 index 15a0800..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/base/GenericTreeDao.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql.base; - -import com.bfd.mf.common.web.entity.mysql.base.BaseTreeEntityModel; -import org.springframework.data.repository.NoRepositoryBean; - -import java.io.Serializable; -import java.util.List; - -@NoRepositoryBean -public interface GenericTreeDao, PK extends Serializable> - extends GenericDao { - List getRoot(); -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/ClusterRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/ClusterRepository.java deleted file mode 100644 index ce35f97..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/ClusterRepository.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql.cache; - -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import org.springframework.data.jpa.repository.Query; -import org.springframework.data.repository.CrudRepository; -import org.springframework.stereotype.Repository; - -import java.util.List; - -@Repository -public interface ClusterRepository extends CrudRepository { - Cluster findClusterByType(int type); - - /** - * 返回集群id - */ - @Query(value = "SELECT * FROM cl_cluster WHERE type IN(?1) ", nativeQuery = true) - List findClusterByTypeList(List typeList); - - /** - * 集群 - */ - @Query(value = "SELECT * FROM cl_cluster WHERE type=?1 ", nativeQuery = true) - List findClusterListByType(int subjectClusterType); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/SubjectClusterRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/SubjectClusterRepository.java deleted file mode 100644 index 1e51818..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/cache/SubjectClusterRepository.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql.cache; - -import com.bfd.mf.common.web.entity.mysql.cache.SubjectCluster; -import org.springframework.data.repository.CrudRepository; -import org.springframework.stereotype.Repository; - -import java.math.BigInteger; - -@Repository -public interface SubjectClusterRepository extends CrudRepository { - SubjectCluster findSubjectClusterBySubjectId(BigInteger subjectId); -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/report/MainSourceRepository.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/report/MainSourceRepository.java deleted file mode 100644 index b740f8d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/repository/mysql/report/MainSourceRepository.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.bfd.mf.common.web.repository.mysql.report; - -import com.bfd.mf.common.web.entity.mysql.report.MainSourceEntity; -import org.springframework.data.repository.CrudRepository; -import org.springframework.stereotype.Repository; - -import java.util.List; - -@Repository -public interface MainSourceRepository extends CrudRepository { - - List findByCompanyIdAndStatus(long companyId, int status); - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/BaseRequest.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/BaseRequest.java deleted file mode 100644 index daa35f4..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/BaseRequest.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.bfd.mf.common.web.vo.params; - - -import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.hibernate.validator.constraints.NotEmpty; - -import javax.validation.constraints.Min; -import javax.validation.constraints.NotNull; -import java.io.Serializable; - -@NoArgsConstructor -public class BaseRequest implements Serializable { - - private static final long serialVersionUID = -8591843291887513043L; - - @NotEmpty(message = "Param 'token' can't be NULL") - @NotNull - private String token; - - @NotEmpty(message = "Param 'sign' can't be NULL") - private String sign; - - @Min(value = 1, message = "Param 'time' is invalid") - private Long time; - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("token", token) - .append("sign", sign) - .append("time", time) - .toString(); - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - public String getSign() { - return sign; - } - - public void setSign(String sign) { - this.sign = sign; - } - - public Long getTime() { - return time; - } - - public void setTime(Long time) { - this.time = time; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/QueryRequest.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/QueryRequest.java deleted file mode 100644 index 9d9f693..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/QueryRequest.java +++ /dev/null @@ -1,259 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params; - - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -public class QueryRequest implements Serializable { - - private static final long serialVersionUID = 1L; - - // 必传字段 - private String subjectId; - private Long userId; - // 翻页字段 - private Integer page; - private Integer limit; - //其他参数 - private Long pubTime; - private String docId; - private String docIds; - private String siteTypes; //站点类型 必传,多个,分隔, 全部传“” - private String order; // 排序方式 asc/desc - private String sidx; // 排序字段 pubTime crawlTime ... - private String searchArea; //0 美国1中国…… - private String cid; // 站点名 - private String crawlDataFlag ; // 数据标识 - private Integer searchScope; // 0 content 1 title 2 author 3 con+tit 4con+aut 5con+com - private String keyword; // 要查询的关键词 - - private Long crawlStartTime; - private Long crawlEndTime; - private Long startTime; - private Long endTime; - - public static long getSerialVersionUID() { - return serialVersionUID; - } - - public String getSubjectId() { - return subjectId; - } - - public void setSubjectId(String subjectId) { - this.subjectId = subjectId; - } - - public Long getUserId() { - return userId; - } - - public void setUserId(Long userId) { - this.userId = userId; - } - - public Integer getPage() { - return page; - } - - public void setPage(Integer page) { - this.page = page; - } - - public Integer getLimit() { - return limit; - } - - public void setLimit(Integer limit) { - this.limit = limit; - } - - public Long getPubTime() { - return pubTime; - } - - public void setPubTime(Long pubTime) { - this.pubTime = pubTime; - } - - public String getDocId() { - return docId; - } - - public void setDocId(String docId) { - this.docId = docId; - } - - public String getDocIds() { - return docIds; - } - - public void setDocIds(String docIds) { - this.docIds = docIds; - } - - public String getSiteTypes() { - return siteTypes; - } - - public void setSiteTypes(String siteTypes) { - this.siteTypes = siteTypes; - } - - public String getOrder() { - return order; - } - - public void setOrder(String order) { - this.order = order; - } - - public String getSidx() { - return sidx; - } - - public void setSidx(String sidx) { - this.sidx = sidx; - } - - public String getSearchArea() { - return searchArea; - } - - public void setSearchArea(String searchArea) { - this.searchArea = searchArea; - } - - public String getCid() { - return cid; - } - - public void setCid(String cid) { - this.cid = cid; - } - - public String getCrawlDataFlag() { - return crawlDataFlag; - } - - public void setCrawlDataFlag(String crawlDataFlag) { - this.crawlDataFlag = crawlDataFlag; - } - - public Integer getSearchScope() { - return searchScope; - } - - public List getSearchScopeValue(Integer num){ - String result = Integer.toBinaryString(num); - // 10000 正文标题 正文内容 正文作者 评论标题 评论作者 - List valueList = new ArrayList<>(); - for (int i = 0 ; i < result.length() ; i ++){ - Integer oneNum = Integer.parseInt(result.substring(i,i+1)); - valueList.add(oneNum); - } - List resultList = new ArrayList<>(); - if(valueList.size() >0 && valueList.get(0) == 1){ - resultList.add("title"); - } - if(valueList.size() >1 && valueList.get(1) ==1){ - resultList.add("content"); - } - if(valueList.size() >2 && valueList.get(2) ==1){ - resultList.add("author"); - } - if(valueList.size() >3 && valueList.get(3) ==1){ - resultList.add("title"); - } - if(valueList.size() >4 && valueList.get(4) ==1){ - resultList.add("author"); - } - return resultList; - } - - public void setSearchScope(Integer searchScope) { - this.searchScope = searchScope; - } - - public String getKeyword() { - return keyword; - } - - public void setKeyword(String keyword) { - this.keyword = keyword; - } - - public Long getCrawlStartTime() { - return crawlStartTime; - } - - public void setCrawlStartTime(Long crawlStartTime) { - this.crawlStartTime = crawlStartTime; - } - - public Long getCrawlEndTime() { - return crawlEndTime; - } - - public void setCrawlEndTime(Long crawlEndTime) { - this.crawlEndTime = crawlEndTime; - } - - public Long getStartTime() { - return startTime; - } - - public void setStartTime(Long startTime) { - this.startTime = startTime; - } - - public Long getEndTime() { - return endTime; - } - - public void setEndTime(Long endTime) { - this.endTime = endTime; - } - - @Override - public String toString() { - return "QueryRequest{" + - "subjectId='" + subjectId + '\'' + - ", userId=" + userId + - ", page=" + page + - ", limit=" + limit + - ", pubTime=" + pubTime + - ", docId='" + docId + '\'' + - ", docIds='" + docIds + '\'' + - ", siteTypes='" + siteTypes + '\'' + - ", order='" + order + '\'' + - ", sidx='" + sidx + '\'' + - ", searchArea='" + searchArea + '\'' + - ", cid='" + cid + '\'' + - ", crawlDataFlag='" + crawlDataFlag + '\'' + - ", searchScope=" + searchScope + - ", keyword='" + keyword + '\'' + - ", crawlStartTime=" + crawlStartTime + - ", crawlEndTime=" + crawlEndTime + - ", startTime=" + startTime + - ", endTime=" + endTime + - '}'; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/DistanceNode.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/DistanceNode.java deleted file mode 100644 index daa7447..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/DistanceNode.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params.expression; - -/** - * @author lei.bao Date: 2016年10月13日 - */ -public class DistanceNode { - public final char opera = '~';// ~ - private int distance;// 例如10 - private boolean formatFinish = false; - - public DistanceNode(int dis) { - this.distance = dis; - } - - public int getDistance() { - return distance; - } - - public void setDistance(int distance) { - this.distance = distance; - } - - public boolean isFormatFinish() { - return formatFinish; - } - - public void setFormatFinish(boolean formatFinish) { - this.formatFinish = formatFinish; - } - - @Override - public String toString() { - return "opera='~',distance=" + distance; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpNode.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpNode.java deleted file mode 100644 index 4637ac5..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpNode.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params.expression; - -public class ExpNode { - private boolean isOpera;// 操作符还是操作数 - private Object value;// ExpObject 或者OperaObject - private ExpNode parent; - private ExpNode left; - private ExpNode right; - private boolean isLeaf; - - public ExpNode(Object c) { - this.value = c; - // this.parent = null; - // this.left = null; - // this.right = null; - // this.isLeaf = true; - } - - public ExpNode(Object c, ExpNode p) { - this(c); - this.parent = p; - } - - public boolean isOpera() { - return isOpera; - } - - public void setOpera(boolean isOpera) { - this.isOpera = isOpera; - } - - public Object getValue() { - return value; - } - - public void setValue(Object value) { - this.value = value; - } - - public ExpNode getParent() { - return parent; - } - - public void setParent(ExpNode parent) { - this.parent = parent; - } - - public ExpNode getLeft() { - return left; - } - - public void setLeft(ExpNode left) { - this.left = left; - } - - public ExpNode getRight() { - return right; - } - - public void setRight(ExpNode right) { - this.right = right; - } - - public boolean isLeaf() { - return isLeaf; - } - - public void setLeaf(boolean isLeaf) { - this.isLeaf = isLeaf; - } - - /** - * - * @param root - * @return - */ - public static ExpNode clone(ExpNode root) { - if (null == root || null == root.getValue()) { - return null; - } - ExpNode node = new ExpNode(root.getValue()); - node.setLeaf(root.isLeaf); - node.setOpera(root.isOpera); - // ExpNode parent = clone(root.getParent()); - // node.setParent(parent); - if (null == root.getLeft() && null == root.getRight()) { - return node; - } - ExpNode left = clone(root.getLeft()); - ExpNode right = clone(root.getRight()); - left.setParent(node); - right.setParent(node); - // - node.setLeft(left); - node.setRight(right); - return node; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpObject.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpObject.java deleted file mode 100644 index 3e3698d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/ExpObject.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params.expression; - -import java.util.ArrayList; -import java.util.List; - -/** - * 最小操作对象单元(不包含嵌套表达式) - * - * @author lei.bao
- * @Date: 2016年10月12日
- */ -public class ExpObject { - public static final String[] defaultFields = new String[] { "title", "content" }; - private String[] fields; - private String expression; - private int slop = 0;// 默认slop - private List tokens = new ArrayList<>();// 适用于多个字符组成的词组,如"apple pay" - - public ExpObject(String v) { - this.expression = v.trim(); - this.fields = defaultFields; - } - public ExpObject(String v, String[] fields) { - this.expression = v.trim(); - this.fields = fields; - } - public ExpObject(String v, int slop,List tk) { - this(v); - this.slop = slop; - this.tokens = tk; - } - - public String getExpression() { - return expression; - } - - public void setExpression(String expression) { - this.expression = expression; - } - - public static String[] getDefaultfields() { - return defaultFields; - } - - public String[] getFields() { - return fields; - } - - public void setFields(String[] fields) { - this.fields = fields; - } - - public int getSlop() { - return slop; - } - - public void setSlop(int slop) { - this.slop = slop; - } - - public List getTokens() { - return tokens; - } - - public void setTokens(List tokens) { - this.tokens = tokens; - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("{").append("value:").append(expression).append(",").append("fields:").append(getFieldStr(fields)) - .append("}"); - return sb.toString(); - } - - private String getFieldStr(String[] field) { - if (null == field || field.length == 0) { - return "[null]"; - } - StringBuilder sb = new StringBuilder(); - sb.append("["); - for (int i = 0; i < field.length; i++) { - sb.append(field[i]); - if (i < field.length - 1) { - sb.append(","); - } - } - sb.append("]"); - return sb.toString(); - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/HalfQuartChar.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/HalfQuartChar.java deleted file mode 100644 index 71d9b57..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/HalfQuartChar.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params.expression; - -/** - * @author lei.bao
- * @Date: 2016年10月13日 - */ -public class HalfQuartChar { - private char charC;//半边符号,如"<","(",等待另外半边匹配 - private int position; - - public HalfQuartChar() { - } - - public HalfQuartChar(char lf, int pos) { - this.charC = lf; - this.position = pos; - } - - public char getCharC() { - return charC; - } - - public void setCharC(char charC) { - this.charC = charC; - } - - public int getPosition() { - return position; - } - - public void setPosition(int position) { - this.position = position; - } - - @Override - public String toString() { - return new String(new char[]{charC}); - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/OperaObject.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/OperaObject.java deleted file mode 100644 index 7f76b03..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/expression/OperaObject.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.params.expression; - -/** - * @author lei.bao Date: 2016年10月13日 - */ -public class OperaObject { - public static final int OPERA_TYPE_ONE = 1; - public static final int OPERA_TYPE_TWO = 2; - - private int type = OPERA_TYPE_ONE;// 默认一元表达式 - private char opera; - private Object obj;// 一元表达式操作对象,如~10中的10,!A中的A - - public OperaObject(char ch) { - this.opera = ch; - if (ch == '!' || ch == '!' || ch == '-') { - this.type = OPERA_TYPE_ONE; - } else { - this.type = OPERA_TYPE_TWO; - } - } - - public OperaObject(char ch, int type) { - this.opera = ch; - this.type = type; - } - - public OperaObject(char ch, Object obj) { - this.opera = ch; - this.type = OPERA_TYPE_ONE; - this.obj = obj; - } - - public int getType() { - return type; - } - - public void setType(int type) { - this.type = type; - } - - public char getOpera() { - return opera; - } - - public void setOpera(char opera) { - this.opera = opera; - } - - public Object getObj() { - return obj; - } - - public void setObj(Object obj) { - this.obj = obj; - } - - @Override - public String toString() { - return "opera=" + opera + ",type=" + type; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/post/PostMonitorRequest.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/post/PostMonitorRequest.java deleted file mode 100644 index 7428c75..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/post/PostMonitorRequest.java +++ /dev/null @@ -1,249 +0,0 @@ -package com.bfd.mf.common.web.vo.params.post; - -import com.bfd.mf.common.web.vo.params.BaseRequest; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; - -import javax.validation.constraints.NotNull; -import java.io.Serializable; -import java.util.List; - -/** - * 帖子分析参数类 - * - * @author renpeng.wei - * @date 2018/8/1 15:42 - */ -public class PostMonitorRequest extends BaseRequest implements Serializable { - @NotNull(message = "Param 'taskId' can't be NULL") - private String taskId; - - private int level = 0; - - private Long startTime; - - private Long endTime; - - /** - * common 正面 negative 负面 neuter 中性 - ***/ - - private List emotion; - - /** - * 未认证 0 个人认证 1 企业认证 2 未知 3 全部 4 - ***/ - private List verified; - - private String keyWord; - - /** - * quoteCount 贡献转发量 fansCount 作者粉丝量 commentsCount 评论量 attitudesCount 获赞量 pubTime 发布时间 - ***/ - private String sort; - - private int page = 0; - - private int size = 10; - /** - * 1 转发列表 2 评论列表 4 转发分析结果 5转发词云列表 6评论分析结果 7 评论词云列表 - **/ - private int type; - - /** - * 1 转发 2 评论 - **/ - private int style; - - private Long nodeId; - - private Integer allNumber; - - /*** - * 1 所有 2 地名 3 话题 4 表情 5 评论 - * - */ - - private Integer weiBoCloudType = 0; - - private String weiBoCloudKeyword ; - - public String getWeiBoCloudKeyword() { - return weiBoCloudKeyword; - } - - public void setWeiBoCloudKeyword(String weiBoCloudKeyword) { - this.weiBoCloudKeyword = weiBoCloudKeyword; - } - - public Integer getWeiBoCloudType() { - return weiBoCloudType; - } - - public void setWeiBoCloudType(Integer weiBoCloudType) { - this.weiBoCloudType = weiBoCloudType; - } - - public Long getNodeId() { - return nodeId; - } - - public void setNodeId(Long nodeId) { - this.nodeId = nodeId; - } - - public String getTaskId() { - return taskId; - } - - public void setTaskId(String taskId) { - this.taskId = taskId; - } - - public int getLevel() { - return level; - } - - public void setLevel(int level) { - this.level = level; - } - - public Long getStartTime() { - return startTime; - } - - public void setStartTime(Long startTime) { - this.startTime = startTime; - } - - public Long getEndTime() { - return endTime; - } - - public void setEndTime(Long endTime) { - this.endTime = endTime; - } - - public List getEmotion() { - return emotion; - } - - public void setEmotion(List emotion) { - this.emotion = emotion; - } - - public List getVerified() { - return verified; - } - - public void setVerified(List verified) { - this.verified = verified; - } - - public String getKeyWord() { - return keyWord; - } - - public void setKeyWord(String keyWord) { - this.keyWord = keyWord; - } - - public String getSort() { - return sort; - } - - public void setSort(String sort) { - this.sort = sort; - } - - public int getPage() { - return page; - } - - public void setPage(int page) { - this.page = page; - } - - public int getSize() { - return size; - } - - public void setSize(int size) { - this.size = size; - } - - public int getType() { - return type; - } - - public void setType(int type) { - this.type = type; - } - - public int getStyle() { - return style; - } - - public void setStyle(int style) { - this.style = style; - } - - public Integer getAllNumber() { - return allNumber; - } - - public void setAllNumber(Integer allNumber) { - this.allNumber = allNumber; - } - - @Override - public String toString() { - return "PostMonitorRequest{" + - "taskId='" + taskId + '\'' + - ", level=" + level + - ", startTime=" + startTime + - ", endTime=" + endTime + - ", emotion=" + emotion + - ", verified=" + verified + - ", keyWord='" + keyWord + '\'' + - ", sort='" + sort + '\'' + - ", page=" + page + - ", size=" + size + - ", type=" + type + - ", style=" + style + - ", nodeId=" + nodeId + - ", allNumber=" + allNumber + - '}'; - } - - public String convertEmotiontoDbString() { - if (!TObjectUtils.isListEmpty(emotion)) { - return TStringUtils.join(emotion, ","); - } - return null; - } - - public PostMonitorRequest() { - } - -// public PostMonitorRequest(DataExportList dataExportList) { -// if (TObjectUtils.nonNull(dataExportList)) { -// this.setToken(dataExportList.getToken()); -// this.setNodeId(dataExportList.getNodeId()); -// if (TStringUtils.isNotEmpty(dataExportList.getEmotionList())) { -// this.setEmotion(Arrays.asList(dataExportList.getEmotionList().split(","))); -// } -// this.setEndTime(dataExportList.getTimeEnd()); -// this.setStartTime(dataExportList.getTimeStart()); -// this.setKeyWord(dataExportList.getSearchText()); -// if(dataExportList.getType().equals(ExportEnum.QUOTE.getCode())) { -// this.setStyle(UserConstant.EXPORT_WEIBO_TYPE_QUOTE); -// }else{ -// this.setStyle(UserConstant.EXPORT_WEIBO_TYPE_COMMENT); -// } -// this.setTaskId(dataExportList.getTaskId()); -// this.setVerified(Arrays.asList(dataExportList.getVerified().split(","))); -// this.setAllNumber(dataExportList.getAllNumber()); -// } -// } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/spam/SpamConstant.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/spam/SpamConstant.java deleted file mode 100644 index 53ef136..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/spam/SpamConstant.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.bfd.mf.common.web.vo.params.spam; - -import java.util.HashSet; -import java.util.Set; - -public class SpamConstant { - public static final String SPAM_TAG = "spamTag"; - - /** - * 出租 - */ - private static final String RENT_TAG_EN = "rent"; - /** - * 婚恋交友 marriageSeeking - */ - private static final String MARRIAGE_SEEKING_TAG_EN = "marriageSeeking"; - /** - * 招聘 - */ - private static final String RECRUITMENT_TAG_EN = "recruitment"; - /** - * 表示正常的数据,其实不过滤 - */ - public static final String NORMAL_TAG_EN = "other"; - /** - * 黄赌毒 - */ - private static final String SEXY_GAMBLE_DRUG_TAG_EN = "sexyGambleDrug"; - - /** - * 其他 - */ - private static final String AD_TAG_EN = "ad"; - - /** - * 闲置转让 - */ - private static final String IDLE_TRANSFER = "transfer"; - - - public static final Set INCLUDE_SPAM_TAG_SET_EN = new HashSet<>(); - - static { - INCLUDE_SPAM_TAG_SET_EN.add(RENT_TAG_EN); - - INCLUDE_SPAM_TAG_SET_EN.add(MARRIAGE_SEEKING_TAG_EN); - - INCLUDE_SPAM_TAG_SET_EN.add(RECRUITMENT_TAG_EN); - - INCLUDE_SPAM_TAG_SET_EN.add(IDLE_TRANSFER); - - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/womanalysis/ProductTag.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/womanalysis/ProductTag.java deleted file mode 100644 index 0f45dba..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/params/womanalysis/ProductTag.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.bfd.mf.common.web.vo.params.womanalysis; - -import lombok.Data; - -/** - * @Auther: huiyz - * @Date: 2018/11/23 10:09 - * @Description: - */ -@Data -public class ProductTag { - - private Long id; - - private String name; -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCompareDocCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCompareDocCount.java deleted file mode 100644 index aa447ac..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCompareDocCount.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -import com.alibaba.fastjson.JSONArray; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -/** - * 对比分析:声量、覆盖媒体声量、情感分析 - * - * @author quanyou.chang - * @create 2016-09-21 12:55 - */ -public class DataCompareDocCount extends DataCountBase implements Serializable { - - - /** - * 整体数量 - */ - private List totalDocList = new ArrayList<>(); - /** - * 覆盖媒体数量 - */ - private List mediaDocList = new ArrayList<>(); - /** - * 情感分析 - */ - private List nodeEmotionCountList = new ArrayList<>(); - - //对比分析--->趋势分析数据 - private List subjectTrendList = new ArrayList<>(); - - private JSONArray timeAbscissa = new JSONArray(); - - - public List getSubjectTrendList() { - return subjectTrendList; - } - - public void setSubjectTrendList(List subjectTrendList) { - this.subjectTrendList = subjectTrendList; - } - - public JSONArray getTimeAbscissa() { - return timeAbscissa; - } - - public void setTimeAbscissa(JSONArray timeAbscissa) { - this.timeAbscissa = timeAbscissa; - } - - public List getTotalDocList() { - return totalDocList; - } - - public void setTotalDocList(List totalDocList) { - this.totalDocList = totalDocList; - } - - public List getMediaDocList() { - return mediaDocList; - } - - public void setMediaDocList(List mediaDocList) { - this.mediaDocList = mediaDocList; - } - - public List getNodeEmotionCountList() { - return nodeEmotionCountList; - } - - public void setNodeEmotionCountList(List nodeEmotionCountList) { - this.nodeEmotionCountList = nodeEmotionCountList; - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCountBase.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCountBase.java deleted file mode 100644 index 6dc0505..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataCountBase.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.io.Serializable; - -/** - * 数据统计基类 - * - * @author quanyou.chang - * @create 2016-09-21 11:23 - **/ -public class DataCountBase implements Serializable { - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE); - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataLineCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataLineCount.java deleted file mode 100644 index e4e2399..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataLineCount.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -/** - * 折线图统计 - * - * @author quanyou.chang - * @create 2016-09-22 10:43 - **/ -public class DataLineCount extends DataCountBase implements Comparable { - /** - * 时间戳 - */ - private Long timestamp; - /** - * 值 - */ - private Long data; - - public Long getTimestamp() { - return timestamp; - } - - public void setTimestamp(Long timestamp) { - this.timestamp = timestamp; - } - - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - /** - * 坐标 - */ - private String name; - - - public Long getData() { - return data; - } - - public void setData(Long data) { - this.data = data; - } - - @Override - public int compareTo(DataLineCount o) { - return this.getTimestamp().compareTo(o.getTimestamp()); - } - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - DataLineCount that = (DataLineCount) o; - - if (timestamp != null ? !timestamp.equals(that.timestamp) : that.timestamp != null) return false; - return name != null ? name.equals(that.name) : that.name == null; - - } - - @Override - public int hashCode() { - int result = timestamp != null ? timestamp.hashCode() : 0; - result = 31 * result + (name != null ? name.hashCode() : 0); - return result; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataPieCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataPieCount.java deleted file mode 100644 index 3e7536d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataPieCount.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -/** - * 数据饼图占比 - * - * @author quanyou.chang - * @create 2016-09-21 11:20 - */ -public class DataPieCount extends DataCountBase implements Comparable { - - public DataPieCount(String name, Long value) { - this.name = name; - this.value = value; - } - public DataPieCount(String name, Long value, String channel) { - this.name = name; - this.value = value; - this.channel=channel; - } - public DataPieCount(String name, Long value, Long nodeId) { - this.name = name; - this.value = value; - this.nodeId = nodeId; - } - - private String name; - - public DataPieCount() { - - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Long getValue() { - return value; - } - - public void setValue(Long value) { - this.value = value; - } - - public String getChannel() { - return channel; - } - - public void setChannel(String channel) { - this.channel = channel; - } - - private Long value = 0L; - private Long nodeId; - private String channel; - private Double percent; - - public Double getPercent() { - return percent; - } - - public void setPercent(Double percent) { - this.percent = percent; - } - - @Override - public int compareTo(DataPieCount o) { - return -(this.getValue().intValue() - o.getValue().intValue()); - } - - public Long getNodeId() { - return nodeId; - } - - public void setNodeId(Long nodeId) { - this.nodeId = nodeId; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCompare.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCompare.java deleted file mode 100644 index 51222a9..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCompare.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.bfd.mf.common.web.vo.view.analysis; - -import com.alibaba.fastjson.JSONArray; - -import java.io.Serializable; -import java.util.List; - -/** - * Created by BFD-194 on 2017/11/7. - */ -public class DataTrendCompare implements Serializable { - - private String name; - - private Long nodeId; - - private JSONArray listNum; - - public DataTrendCompare() { - - } - - public Long getNodeId() { - return nodeId; - } - - public void setNodeId(Long nodeId) { - this.nodeId = nodeId; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public List getListNum() { - return listNum; - } - - public void setListNum(JSONArray listNum) { - this.listNum = listNum; - } - - public DataTrendCompare(String name, JSONArray listNum, int size) { - - if (listNum.size() < size) { - JSONArray jsonArray = new JSONArray(); - for (int i = 0; i < size; i++) { - jsonArray.add(i, 0); - } - this.listNum = jsonArray; - } else { - this.listNum = listNum; - } - this.name = name; - } - - public DataTrendCompare(String name, JSONArray listNum, JSONArray abscissa, JSONArray timeCompare, Long nodeId) { - if (null == timeCompare || timeCompare.size() <= 0) { - this.listNum = listNum; - } else { - JSONArray jsonArray = new JSONArray(); - for (int i = 0; i < timeCompare.size(); i++) { - boolean existTime = false; - for (int j = 0; j < abscissa.size(); j++) { - if (abscissa.get(j).equals(timeCompare.get(i))) { - jsonArray.add(i, listNum.get(j)); - existTime = true; - break; - } - } - if (!existTime) jsonArray.add(i, 0); - } - this.listNum = jsonArray; - } - this.name = name; - this.nodeId = nodeId; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCount.java deleted file mode 100644 index 3117412..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/DataTrendCount.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -import java.util.List; -import java.util.Map; - -/** - * 数据趋势声量统计 - * - * @author quanyou.chang - * @create 2016-09-20 13:36 - */ -public class DataTrendCount extends DataCountBase { - - /** - * 整体声量 - */ - private Long totalNumber = 0L; - /** - * 整体覆盖媒体 - */ - private Long totalMediaNumber = 0L; - /** - * 敏感声量 - */ - private Long negativeNumber = 0L; - - public Long getTotalNumber() { - return totalNumber; - } - - public void setTotalNumber(Long totalNumber) { - this.totalNumber = totalNumber; - } - - public Long getTotalMediaNumber() { - return totalMediaNumber; - } - - public void setTotalMediaNumber(Long totalMediaNumber) { - this.totalMediaNumber = totalMediaNumber; - } - - public Long getNegativeNumber() { - return negativeNumber; - } - - public void setNegativeNumber(Long negativeNumber) { - this.negativeNumber = negativeNumber; - } - - public Long getNegativeMediaNumber() { - return negativeMediaNumber; - } - - public void setNegativeMediaNumber(Long negativeMediaNumber) { - this.negativeMediaNumber = negativeMediaNumber; - } - - /** - * 敏感覆盖媒体 - */ - private Long negativeMediaNumber = 0L; - - private Map> mapNodeId; - - public Map> getMapNodeId() { - return mapNodeId; - } - - public void setMapNodeId(Map> mapNodeId) { - this.mapNodeId = mapNodeId; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/NodeEmotionCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/NodeEmotionCount.java deleted file mode 100644 index 8536070..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/NodeEmotionCount.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author quanyou.chang - * @create 2016-09-21 11:20 - **/ -public class NodeEmotionCount extends DataCountBase { - - - public NodeEmotionCount() { - - } - - - public NodeEmotionCount(String nodeName, List dataPieCountList) { - this.nodeName = nodeName; - this.dataPieCountList = dataPieCountList; - } - public NodeEmotionCount(String nodeName, List dataPieCountList, Long nodeId) { - this.nodeName = nodeName; - this.dataPieCountList = dataPieCountList; - this.nodeId = nodeId; - } - - private List dataPieCountList = new ArrayList<>(); - private Long nodeId; - - - public String getNodeName() { - return nodeName; - } - - public void setNodeName(String nodeName) { - this.nodeName = nodeName; - } - - private String nodeName = null; - - public List getDataPieCountList() { - return dataPieCountList; - } - - public void setDataPieCountList(List dataPieCountList) { - this.dataPieCountList = dataPieCountList; - } - - public Long getNodeId() { - return nodeId; - } - - public void setNodeId(Long nodeId) { - this.nodeId = nodeId; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/PieCount.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/PieCount.java deleted file mode 100644 index 8664cfb..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/analysis/PieCount.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.analysis; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -/** - * 饼图展示 - * - * @author quanyou.chang - * @create 2016-09-21 12:55 - **/ -public class PieCount implements Serializable { - - public List getChannelCounts() { - return channelCounts; - } - - public void setChannelCounts(List channelCounts) { - this.channelCounts = channelCounts; - } - - List channelCounts = new ArrayList(); - - public List getEmotionCounts() { - return emotionCounts; - } - - public void setEmotionCounts(List emotionCounts) { - this.emotionCounts = emotionCounts; - } - - List emotionCounts = new ArrayList(); - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorBaseEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorBaseEntity.java deleted file mode 100644 index ade2ac3..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorBaseEntity.java +++ /dev/null @@ -1,490 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.monitor; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.constants.ESConstant; -import com.google.common.base.Objects; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - -public class ESMonitorBaseEntity implements Comparable, Serializable { - private static final long serialVersionUID = 3296318610448822680L; - - private String docId = ""; //unique Id - private String dataId ; - private String title; // 文章title - private Long pubTime = 0L; //文章发布时间 - private Double sysSentiment; - private String sysSentimentTag; //敏感 OR 非敏感 - private Double sysSentimentValue; - private String url; //链接地址 - private String urlHash; //url hash - private String source; //来源 - private String docType; //网站类型 - private String channel; - private String author; - private String avatar; - private Integer availability; - private static String DEFAULT_ICON = "http://tva1.sinaimg.cn/default/images/default_avatar_male_180.gif"; - private String icon = DEFAULT_ICON; //图标 - private long subjecId; - private String commentId; - - private String content; - private String contentSimHash; //文章SimHash - private Integer contentSize; //正文长度 - - private Integer quoteCount = 0; - private Integer commentsCount = 0; - private String attitudesCount; - - private List hlKeyWords; - private List places; - private List hashTag; - private List opinions; - private List expression; - - private List pictureList; - private Long crawlTime; - private String postSource; - - private boolean isDownload; - private String filePath; - private String videoUrl; - - public boolean getIsDownload() { - return isDownload; - } - - public void setIsDownload(boolean download) { - isDownload = download; - } - - public String getFilePath() { - return filePath; - } - - public void setFilePath(String filePath) { - this.filePath = filePath; - } - - public String getVideoUrl() { - return videoUrl; - } - - public void setVideoUrl(String videoUrl) { - this.videoUrl = videoUrl; - } - - public String getAvatar() { - return avatar; - } - - public void setAvatar(String avatar) { - this.avatar = avatar; - } - - public String getCity() { - return city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getProvince() { - return province; - } - - public void setProvince(String province) { - this.province = province; - } - - private String city; - private String province; - - // private Float score = 0.0f; -// 文章相似得分 -// private Integer praiseCount = 0; -// Added by Eric 2016-10-28 15:03:31 -// private String userSex; -// private List allKeyWords; -// private Long similarityNumber = 0L; //相似文章量 -// private long allSliceDocNumber = 0L; -// private String contentTag; -// private Integer userFriendsCount; -// private Integer fansCount; -// private String userCountry; -// private String userProvince; -// private String userCity; -// private String userVerified; -// -// private String country; -// private String sysAbstract; -// private String sex; -// private String spamTag; -// private String orderFlag = ESConstant.DESC; -// private String sortFlag = ESConstant.PUBTIME_DESC_SORT_FLAG; -// private long errorCount = 0L; -// private String originalSource; //原始来源 -// private JSONObject hitWords; //命中关键词个数 -// private ScoreFactorEntity scoreFactorEntity = new ScoreFactorEntity(); -// private String forwardContent; -// private String forwardReleaseDate; -// private String forwardAuthor; -// private Integer forwardFlag; -// private String titleSimHash; -// private String relType; -// -// private String area; -// private String forwardPostSource; -// private String birthDay; -// private HashMap replyComment; //微博评论的父级评论 -// private String forwardUrl; //微博原文url -// private String originalUrl; //本新闻的上层url -// private String userId; -// private Integer userType = 0; //用户类型 -// private Double commentScore; //电商星级分数 - public String getDataId() { - return dataId; - } - - public void setDataId(String dataId) { - this.dataId = dataId; - } - - - public String getPostSource() { - return postSource; - } - - public void setPostSource(String postSource) { - this.postSource = postSource; - } - - public String getChannel() { - return channel; - } - - public void setChannel(String channel) { - this.channel = channel; - } - - public String getAttitudesCount() { - return attitudesCount; - } - - public void setAttitudesCount(String attitudesCount) { - this.attitudesCount = attitudesCount; - } - - public List getPictureList() { - return pictureList; - } - - public void setPictureList(List pictureList) { - this.pictureList = pictureList; - } - - public List getExpression() { - return expression; - } - - public void setExpression(List expression) { - this.expression = expression; - } - - private List emotionEntry = new ArrayList<>(); - - public List getEmotionEntry() { - return emotionEntry; - } - - public void setEmotionEntry(List emotionEntry) { - this.emotionEntry = emotionEntry; - } - - public long getSubjecId() { - return subjecId; - } - - public void setSubjecId(long subjecId) { - this.subjecId = subjecId; - } - - public Double getSysSentimentValue() { - return sysSentimentValue; - } - - public void setSysSentimentValue(Double sysSentimentValue) { - this.sysSentimentValue = sysSentimentValue; - } - - public String getContent() { - return content; - } - - public void setContent(String content) { - this.content = content; - } - - public Integer getContentSize() { - return contentSize; - } - - public void setContentSize(Integer contentSize) { - this.contentSize = contentSize; - } - - public Integer getQuoteCount() { - return quoteCount; - } - - public void setQuoteCount(Integer quoteCount) { - this.quoteCount = quoteCount; - } - - public Integer getCommentsCount() { - return commentsCount; - } - - public void setCommentsCount(Integer commentsCount) { - this.commentsCount = commentsCount; - } - - public Double getSysSentiment() { - return sysSentiment; - } - - public void setSysSentiment(Double sysSentiment) { - this.sysSentiment = sysSentiment; - } - - public String getCommentId() { - return commentId; - } - - public void setCommentId(String commentId) { - this.commentId = commentId; - } - - public String getContentSimHash() { - return contentSimHash; - } - - public String getDocId() { - return docId; - } - - public String getDocType() { - return docType; - } - - public String getIcon() { - // icon = ConvertUrlUtils.fetchIconByDocType(docType, this.getUrl(), icon); - return icon; - } - - public Long getPubTime() { - return pubTime; - } - - public String getSource() { - return source; - } - - public String getTitle() { - return title; - } - - public String getUrl() { - return url; - } - - public String getUrlHash() { - return urlHash; - } - - public void setUrlHash(String urlHash) { - this.urlHash = urlHash; - } - - public void setContentSimHash(String contentSimHash) { - this.contentSimHash = contentSimHash; - } - - public void setDocId(String docId) { - this.docId = docId; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public void setPubTime(Long pubTime) { - this.pubTime = pubTime; - } - - public void setSource(String source) { - this.source = source; - } - - public String getSysSentimentTag() { - return sysSentimentTag; - } - - public void setSysSentimentTag(String sysSentimentTag) { - this.sysSentimentTag = sysSentimentTag; - } - - public void setTitle(String title) { - this.title = title; - } - - public void setUrl(String url) { - this.url = url; - } - - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE); - } - - public Long getCrawlTime() { - return crawlTime; - } - - public void setCrawlTime(Long crawlTime) { - this.crawlTime = crawlTime; - } - - public List getHlKeyWords() { - return hlKeyWords; - } - - public void setHlKeyWords(List hlKeyWords) { - this.hlKeyWords = hlKeyWords; - } - - public String getAuthor() { - return author; - } - - public List getPlaces() { - return places; - } - - public void setPlaces(List places) { - this.places = places; - } - - public List getHashTag() { - return hashTag; - } - - public void setHashTag(List hashTag) { - this.hashTag = hashTag; - } - - public List getOpinions() { - return opinions; - } - - public void setOpinions(List opinions) { - this.opinions = opinions; - } - - public void setAuthor(String author) { - this.author = author; - } - - public JSONObject toJson() { - JSONObject jsonObject = new JSONObject(); - jsonObject.put(ESConstant.DOC_ID, docId); - jsonObject.put(ESConstant.DATA_ID,dataId); - jsonObject.put(ESConstant.DOC_TYPE, docType); - jsonObject.put(ESConstant.CHANNEL,channel); - jsonObject.put(ESConstant.SOURCE, source); - jsonObject.put(ESConstant.SYS_SENTIMENT, sysSentiment); - jsonObject.put(ESConstant.URL, url); - jsonObject.put(ESConstant.URL_HASH, urlHash); - jsonObject.put(ESConstant.QUOTE_COUNT, quoteCount); - jsonObject.put(ESConstant.COMMENTS_COUNT, commentsCount); - jsonObject.put(ESConstant.ATTITUDES_COUNT, attitudesCount); - jsonObject.put(ESConstant.AVATAR, avatar); - jsonObject.put(ESConstant.TITLE, title); - jsonObject.put(ESConstant.AUTHOR, author); - jsonObject.put(ESConstant.PUBTIME, pubTime); - jsonObject.put(ESConstant.CONTENT, content); - jsonObject.put(ESConstant.CONTENT_SIMHASH, contentSimHash); - jsonObject.put(ESConstant.CRAWLTIME, crawlTime); - jsonObject.put(ESConstant.EMOTION_ENTRY, emotionEntry); - jsonObject.put(ESConstant.OPINIONS, opinions); - jsonObject.put(ESConstant.HASH_TAG, hashTag); - jsonObject.put(ESConstant.PLACES, places); - jsonObject.put(ESConstant.EXPRESSION, expression); - jsonObject.put(ESConstant.PICTURE_LIST, pictureList); - jsonObject.put(ESConstant.AVAILABILITY,availability); - jsonObject.put(ESConstant.ISDOWNLOAD,isDownload); - jsonObject.put(ESConstant.FILEPATH,filePath); - jsonObject.put(ESConstant.VIDEOURL,videoUrl); - - return jsonObject; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ESMonitorBaseEntity that = (ESMonitorBaseEntity) o; - return Objects.equal(docId, that.docId); - } - - @Override - public int hashCode() { - return Objects.hashCode(docId); - } - - public Integer getAvailability() { - return availability; - } - - public void setAvailability(Integer availability) { - this.availability = availability; - } - - - @Override - public int compareTo(ESMonitorBaseEntity o) { - return 0; - } -} - diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorEntity.java deleted file mode 100644 index 86e167b..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorEntity.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.monitor; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -public class ESMonitorEntity extends ESMonitorBaseEntity implements Serializable { - - private static final long serialVersionUID = -1557827150460861842L; - - private String contentAbstract; //文章摘要 - - public String getContentAbstract() { - return contentAbstract; - } - - public void setContentAbstract(String contentAbstract) { - this.contentAbstract = contentAbstract; - } - - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE); - } - -} - diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorListEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorListEntity.java deleted file mode 100644 index ebcadfc..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESMonitorListEntity.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.monitor; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -/** - *

- * - * @author : quanyou.chang - * @date : 2016/8/24 17:10 - * @description: 数据监控列表页实体类 - */ -public class ESMonitorListEntity implements Serializable { - - private List monitorLists = new ArrayList<>(); - private long allDocNumber; - private long afterFoldNumber; - - public List getMonitorLists() { - return monitorLists; - } - - public void setMonitorLists(List monitorLists) { - this.monitorLists = monitorLists; - } - - public long getAllDocNumber() { - return allDocNumber; - } - - public void setAllDocNumber(long allDocNumber) { - this.allDocNumber = allDocNumber; - } - - public long getAfterFoldNumber() { - return afterFoldNumber; - } - - public void setAfterFoldNumber(long afterFoldNumber) { - this.afterFoldNumber = afterFoldNumber; - } - - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE); - } - -} - diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESSimilarityEntity.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESSimilarityEntity.java deleted file mode 100644 index b691dbf..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/monitor/ESSimilarityEntity.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.common.web.vo.view.monitor; - -import org.elasticsearch.search.SearchHit; - - -public class ESSimilarityEntity extends ESMonitorBaseEntity { - private String sysAbstract; - private String originalSource; - private SearchHit originalHit; - private String contentAbstract; -// private Long nodeId; - private String area; - - public SearchHit getOriginalHit() { - return originalHit; - } - - public void setOriginalHit(SearchHit originalHit) { - this.originalHit = originalHit; - } - - public String getOriginalSource() { - return originalSource; - } - - public void setOriginalSource(String originalSource) { - this.originalSource = originalSource; - } - - public String getContentAbstract() { - return contentAbstract; - } - - public void setContentAbstract(String contentAbstract) { - this.contentAbstract = contentAbstract; - } - -} - - diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/subject/DataTypeVO.java b/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/subject/DataTypeVO.java deleted file mode 100644 index 1e13945..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/common/web/vo/view/subject/DataTypeVO.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.bfd.mf.common.web.vo.view.subject; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -@Data -@AllArgsConstructor -@NoArgsConstructor -@Builder -public class DataTypeVO { - private String channel; - private List dataType; - - public String getChannel() { - return channel; - } - - public void setChannel(String channel) { - this.channel = channel; - } - - public List getDataType() { - return dataType; - } - - public void setDataType(List dataType) { - this.dataType = dataType; - } - -// public void verify() throws Exception{ -// // 验证渠道 -// ReportEnums.DOCTYPE.valueOf(channel); -// -// // 验证数据类型 -// for(String type : dataType){ -// SubjectEnum.DataTypeEnum.valueOf(type); -// } -// } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/config/BFDApiConfig.java b/cl_search_api/src/main/java/com/bfd/mf/config/BFDApiConfig.java deleted file mode 100644 index 2201b7d..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/config/BFDApiConfig.java +++ /dev/null @@ -1,1094 +0,0 @@ -package com.bfd.mf.config; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Configuration; -import org.springframework.validation.annotation.Validated; - -import java.util.ArrayList; -import java.util.HashMap; - -@Configuration -@EnableConfigurationProperties -@ConfigurationProperties(prefix = "bfd.api.mf") -@Validated -public class BFDApiConfig { - - private ThreadConfig threadConfig; - private Download download; - private ES es; - private Data data; - private Image image; - private Email email; - private Thrift thrift; - private ManualImage manualImage; - private ReportImage reportImage; - private String restBaseUrl; - private String webBaseUrl; - private String metaSearchUrl; - private String foreignMetaSearchUrl; - private String restDataApi; - private String similarityMonitorWarnNumber; - private String similarityMonitorSplitNumber; - private String mergeSegmentsIndexNumber; - private String maxEsNumber; - private String weiboChannelTimeUrl; - private Screen screen; - private int defaultCacheLimitDay; - private Integer failedTaskRetryNum; - private Integer dataCompareCount; - private String weChatDomainName; - private String textPostUrl; - private String emotionPostUrl; - private String wordCloudPostUrl; - private Integer emotionPostType; - - public Integer getEmotionPostType() { - return emotionPostType; - } - - public void setEmotionPostType(Integer emotionPostType) { - this.emotionPostType = emotionPostType; - } - - public String getWordCloudPostUrl() { - return wordCloudPostUrl; - } - - public void setWordCloudPostUrl(String wordCloudPostUrl) { - this.wordCloudPostUrl = wordCloudPostUrl; - } - - public String getTextPostUrl() { - return textPostUrl; - } - - public void setTextPostUrl(String textPostUrl) { - this.textPostUrl = textPostUrl; - } - - public String getEmotionPostUrl() { - return emotionPostUrl; - } - - public void setEmotionPostUrl(String emotionPostUrl) { - this.emotionPostUrl = emotionPostUrl; - } - - public String getSimilarityMonitorWarnNumber() { - return similarityMonitorWarnNumber; - } - - public void setSimilarityMonitorWarnNumber(String similarityMonitorWarnNumber) { - this.similarityMonitorWarnNumber = similarityMonitorWarnNumber; - } - - public String getSimilarityMonitorSplitNumber() { - return similarityMonitorSplitNumber; - } - - public void setSimilarityMonitorSplitNumber(String similarityMonitorSplitNumber) { - this.similarityMonitorSplitNumber = similarityMonitorSplitNumber; - } - - public String getWeiboChannelTimeUrl() { - return weiboChannelTimeUrl; - } - - public void setWeiboChannelTimeUrl(String weiboChannelTimeUrl) { - this.weiboChannelTimeUrl = weiboChannelTimeUrl; - } - - public String getMaxEsNumber() { - return maxEsNumber; - } - - public void setMaxEsNumber(String maxEsNumber) { - this.maxEsNumber = maxEsNumber; - } - - public String getMergeSegmentsIndexNumber() { - return mergeSegmentsIndexNumber; - } - - public void setMergeSegmentsIndexNumber(String mergeSegmentsIndexNumber) { - this.mergeSegmentsIndexNumber = mergeSegmentsIndexNumber; - } - - public String getRestDataApi() { - return restDataApi; - } - - public void setRestDataApi(String restDataApi) { - this.restDataApi = restDataApi; - } - - public Integer getDataCompareCount() { - return dataCompareCount; - } - - public void setDataCompareCount(Integer dataCompareCount) { - this.dataCompareCount = dataCompareCount; - } - - private boolean codisCacheFlag = false; - - public ReportBehaviorInterface getReportBehaviorInterface() { - return reportBehaviorInterface; - } - - public void setReportBehaviorInterface(ReportBehaviorInterface reportBehaviorInterface) { - this.reportBehaviorInterface = reportBehaviorInterface; - } - - private ReportBehaviorInterface reportBehaviorInterface; - /** - * 访客 IP 白名单 - */ - private ArrayList accessWhiteList; - /** - * 请求 内网地址 白名单 - */ - private ArrayList accessRequestUrl; - - - /** - * 会话 session 过期时间 6小时 60*60*6 - */ - private int cacheTimeout = 21600; - /** - * 单次批量收藏最大数量 - */ - private int maxFavourNumber = 1000; - - public int getMaxFavourNumber() { - return maxFavourNumber; - } - - public void setMaxFavourNumber(int maxFavourNumber) { - this.maxFavourNumber = maxFavourNumber; - } - - /** - * 微信简报对应渠道的查询数目 - */ - private int wechatNumber = 20; - - public String getMetaSearchUrl() { - return metaSearchUrl; - } - - public void setMetaSearchUrl(String metaSearchUrl) { - this.metaSearchUrl = metaSearchUrl; - } - - public String getRestBaseUrl() { - return restBaseUrl; - } - - public void setRestBaseUrl(String restBaseUrl) { - this.restBaseUrl = restBaseUrl; - } - - public ManualImage getManualImage() { - return manualImage; - } - - public void setManualImage(ManualImage manualImage) { - this.manualImage = manualImage; - } - - public ES getEs() { - return es; - } - - public void setEs(ES es) { - this.es = es; - } - - public Download getDownload() { - return download; - } - - public void setDownload(Download download) { - this.download = download; - } - - public Data getData() { - return data; - } - - public void setData(Data data) { - this.data = data; - } - - public Email getEmail() { - return email; - } - - public void setEmail(Email email) { - this.email = email; - } - - public Thrift getThrift() { - return thrift; - } - - public void setThrift(Thrift thrift) { - this.thrift = thrift; - } - - public String getWebBaseUrl() { - return webBaseUrl; - } - - public void setWebBaseUrl(String webBaseUrl) { - this.webBaseUrl = webBaseUrl; - } - - public Screen getScreen() { - return screen; - } - - public void setScreen(Screen screen) { - this.screen = screen; - } - - public ArrayList getAccessWhiteList() { - return accessWhiteList; - } - - public void setAccessWhiteList(ArrayList accessWhiteList) { - this.accessWhiteList = accessWhiteList; - } - - public ArrayList getAccessRequestUrl() { - return accessRequestUrl; - } - - public void setAccessRequestUrl(ArrayList accessRequestUrl) { - this.accessRequestUrl = accessRequestUrl; - } - - public int getCacheTimeout() { - return cacheTimeout; - } - - public long getDefaultCacheLimitDay() { - return defaultCacheLimitDay; - } - - public void setDefaultCacheLimitDay(int defaultCacheLimitDay) { - this.defaultCacheLimitDay = defaultCacheLimitDay; - } - - public void setCacheTimeout(int cacheTimeout) { - this.cacheTimeout = cacheTimeout; - } - - public Integer getFailedTaskRetryNum() { - return failedTaskRetryNum; - } - - public void setFailedTaskRetryNum(Integer failedTaskRetryNum) { - this.failedTaskRetryNum = failedTaskRetryNum; - } - - private Integer filterType; - private Integer queryType; - private Boolean bigram; - - public Integer getFilterType() { - return filterType; - } - - @Override - public String toString() { - return "BFDApiConfig{" + - "threadConfig=" + threadConfig + - ", download=" + download + - ", es=" + es + - ", data=" + data + - ", image=" + image + - ", email=" + email + - ", thrift=" + thrift + - ", manualImage=" + manualImage + - ", reportImage=" + reportImage + - ", restBaseUrl='" + restBaseUrl + '\'' + - ", webBaseUrl='" + webBaseUrl + '\'' + - ", metaSearchUrl='" + metaSearchUrl + '\'' + - ", foreignMetaSearchUrl='" + foreignMetaSearchUrl + '\'' + - ", restDataApi='" + restDataApi + '\'' + - ", similarityMonitorWarnNumber='" + similarityMonitorWarnNumber + '\'' + - ", similarityMonitorSplitNumber='" + similarityMonitorSplitNumber + '\'' + - ", mergeSegmentsIndexNumber='" + mergeSegmentsIndexNumber + '\'' + - ", maxEsNumber='" + maxEsNumber + '\'' + - ", weiboChannelTimeUrl='" + weiboChannelTimeUrl + '\'' + - ", screen=" + screen + - ", defaultCacheLimitDay=" + defaultCacheLimitDay + - ", failedTaskRetryNum=" + failedTaskRetryNum + - ", dataCompareCount=" + dataCompareCount + - ", weChatDomainName='" + weChatDomainName + '\'' + - ", textPostUrl='" + textPostUrl + '\'' + - ", emotionPostUrl='" + emotionPostUrl + '\'' + - ", codisCacheFlag=" + codisCacheFlag + - ", reportBehaviorInterface=" + reportBehaviorInterface + - ", accessWhiteList=" + accessWhiteList + - ", accessRequestUrl=" + accessRequestUrl + - ", cacheTimeout=" + cacheTimeout + - ", maxFavourNumber=" + maxFavourNumber + - ", wechatNumber=" + wechatNumber + - ", filterType=" + filterType + - ", queryType=" + queryType + - ", bigram=" + bigram + - ", cacheAtDataMonitor=" + cacheAtDataMonitor + - '}'; - } - - public void setFilterType(Integer filterType) { - this.filterType = filterType; - } - - public Integer getQueryType() { - return queryType; - } - - public void setQueryType(Integer queryType) { - this.queryType = queryType; - } - - public Boolean getBigram() { - return bigram; - } - - public void setBigram(Boolean bigram) { - this.bigram = bigram; - } - - public int getWechatNumber() { - return wechatNumber; - } - - public void setWechatNumber(int wechatNumber) { - this.wechatNumber = wechatNumber; - } - - public String getForeignMetaSearchUrl() { - return foreignMetaSearchUrl; - } - - public void setForeignMetaSearchUrl(String foreignMetaSearchUrl) { - this.foreignMetaSearchUrl = foreignMetaSearchUrl; - } - - /** - * 数据监控页数据缓存时间: seconds - */ - public Integer cacheAtDataMonitor; - - public Integer getCacheAtDataMonitor() { - return cacheAtDataMonitor; - } - - public void setCacheAtDataMonitor(int cacheAtDataMonitor) { - this.cacheAtDataMonitor = cacheAtDataMonitor; - } - - public boolean isCodisCacheFlag() { - return codisCacheFlag; - } - - public void setCodisCacheFlag(boolean codisCacheFlag) { - this.codisCacheFlag = codisCacheFlag; - } - - public ThreadConfig getThreadConfig() { - return threadConfig; - } - - public void setThreadConfig(ThreadConfig threadConfig) { - this.threadConfig = threadConfig; - } - - public String getWeChatDomainName() { - return weChatDomainName; - } - - public void setWeChatDomainName(String weChatDomainName) { - this.weChatDomainName = weChatDomainName; - } - - public static class Download { - private String codisTaskQueueKey; - private String filePath; - private int sleepSeconds; - private int zombieSeconds; - private Schedule schedule; - private String active = "N"; - private String fileSecondPath; - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("active", active) - .append("codisTaskQueueKey", codisTaskQueueKey) - .append("filePath", filePath) - .append("sleepSeconds", sleepSeconds) - .append("schedule", schedule) - .append("fileSecondPath", fileSecondPath) - .toString(); - } - - public int getSleepSeconds() { - return sleepSeconds; - } - - public void setSleepSeconds(int sleepSeconds) { - this.sleepSeconds = sleepSeconds; - } - - public String getCodisTaskQueueKey() { - return codisTaskQueueKey; - } - - public void setCodisTaskQueueKey(String codisTaskQueueKey) { - this.codisTaskQueueKey = codisTaskQueueKey; - } - - public String getFilePath() { - return filePath; - } - - public void setFilePath(String filePath) { - this.filePath = filePath; - } - - public Schedule getSchedule() { - return schedule; - } - - public void setSchedule(Schedule schedule) { - this.schedule = schedule; - } - - public String getActive() { - return active; - } - - public void setActive(String active) { - this.active = active; - } - - public int getZombieSeconds() { - return zombieSeconds; - } - - public void setZombieSeconds(int zombieSeconds) { - this.zombieSeconds = zombieSeconds; - } - - public String getFileSecondPath() { - return fileSecondPath; - } - - public void setFileSecondPath(String fileSecondPath) { - this.fileSecondPath = fileSecondPath; - } - } - - public static class ES { - private String url, cluster, secondUrl, itemIndex, indexPrefix, primaryIndex; - private Integer port; - private Long dailyIndexCount; - private Integer availableMiniClusterDays = 3; - - public String getPrimaryIndex() { - return primaryIndex; - } - - public void setPrimaryIndex(String primaryIndex) { - this.primaryIndex = primaryIndex; - } - - public Integer getScrollSize() { - return scrollSize; - } - - public void setScrollSize(Integer scrollSize) { - this.scrollSize = scrollSize; - } - - private Integer scrollSize; - - public Boolean getIndexDynamic() { - return indexDynamic; - } - - public void setIndexDynamic(Boolean indexDynamic) { - this.indexDynamic = indexDynamic; - } - - private Boolean indexDynamic; - - public Integer getSliceNumber() { - return sliceNumber; - } - - public void setSliceNumber(Integer sliceNumber) { - this.sliceNumber = sliceNumber; - } - - private Integer sliceNumber; - - private Integer filterNumber; - - public Long getDailyIndexCount() { - return dailyIndexCount; - } - - public void setDailyIndexCount(Long dailyIndexCount) { - this.dailyIndexCount = dailyIndexCount; - } - - public String getHttpPort() { - return httpPort; - } - - public Integer getFilterNumber() { - return filterNumber; - } - - public void setFilterNumber(Integer filterNumber) { - this.filterNumber = filterNumber; - } - - public void setHttpPort(String httpPort) { - this.httpPort = httpPort; - } - - private String httpPort; - - private String httpNormalPort; - - public String getHttpNormalPort() { - return httpNormalPort; - } - - public void setHttpNormalPort(String httpNormalPort) { - this.httpNormalPort = httpNormalPort; - } - - public Integer getSecondPort() { - return secondPort; - } - - public void setSecondPort(Integer secondPort) { - this.secondPort = secondPort; - } - - private Integer secondPort; - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String getCluster() { - return cluster; - } - - public void setCluster(String cluster) { - this.cluster = cluster; - } - - public Integer getPort() { - return port; - } - - public void setPort(Integer port) { - this.port = port; - } - - public String getSecondUrl() { - return secondUrl; - } - - public void setSecondUrl(String secondUrl) { - this.secondUrl = secondUrl; - } - - public String getItemIndex() { - return itemIndex; - } - - public void setItemIndex(String itemIndex) { - this.itemIndex = itemIndex; - } - - public String getDefaultIndexPre() { - return indexPrefix + "_*"; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("url", url) - .append("port", port) - .append("secondUrl", secondUrl) - .append("secondPort", secondPort) - .append("cluster", cluster) - .append("itemIndex", itemIndex) - .append("indexPrefix", indexPrefix) - .append("dailyIndexCount", dailyIndexCount) - .toString(); - } - - public String getIndexPrefix() { - return indexPrefix; - } - - public void setIndexPrefix(String indexPrefix) { - this.indexPrefix = indexPrefix; - } - - public Integer getAvailableMiniClusterDays() { - return availableMiniClusterDays; - } - - public void setAvailableMiniClusterDays(Integer availableMiniClusterDays) { - this.availableMiniClusterDays = availableMiniClusterDays; - } - } - - public static class Schedule { - private String jobPrefix, jobGroup, triggerPrefix, triggerGroup; - private String cronTime; - private int threadNumber = 10, delaySeconds = 30; - - public int getThreadNumber() { - return threadNumber; - } - - public void setThreadNumber(int threadNumber) { - this.threadNumber = threadNumber; - } - - public String getJobPrefix() { - return jobPrefix; - } - - public void setJobPrefix(String jobPrefix) { - this.jobPrefix = jobPrefix; - } - - public String getJobGroup() { - return jobGroup; - } - - public void setJobGroup(String jobGroup) { - this.jobGroup = jobGroup; - } - - public String getTriggerPrefix() { - return triggerPrefix; - } - - public void setTriggerPrefix(String triggerPrefix) { - this.triggerPrefix = triggerPrefix; - } - - public String getTriggerGroup() { - return triggerGroup; - } - - public void setTriggerGroup(String triggerGroup) { - this.triggerGroup = triggerGroup; - } - - public String getCronTime() { - return cronTime; - } - - public void setCronTime(String cronTime) { - this.cronTime = cronTime; - } - - public int getDelaySeconds() { - return delaySeconds; - } - - public void setDelaySeconds(int delaySeconds) { - this.delaySeconds = delaySeconds; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("jobPrefix", jobPrefix) - .append("jobGroup", jobGroup) - .append("triggerPrefix", triggerPrefix) - .append("triggerGroup", triggerGroup) - .append("cronTime", cronTime) - .append("threadNumber", threadNumber) - .append("delaySeconds", delaySeconds) - .toString(); - } - } - - public static class Data { - HashMap typeKv; - String filePath; - - public HashMap getTypeKv() { - return typeKv; - } - - public void setTypeKv(HashMap typeKv) { - this.typeKv = typeKv; - } - - public String getFilePath() { - return filePath; - } - - public void setFilePath(String filePath) { - this.filePath = filePath; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("typeKv", typeKv) - .append("filePath", filePath) - .toString(); - } - } - - public Image getImage() { - return image; - } - - public void setImage(Image image) { - this.image = image; - } - - public static class Image { - private String icon, dot, logo, footer, arr, articleSign, baseUrl, chartServerUrl, defaultChartUrl, - pieChartUrl, lineChartUrl, baseNginxPath; - - public String getIcon() { - return icon; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public String getDot() { - return dot; - } - - public void setDot(String dot) { - this.dot = dot; - } - - public String getLogo() { - return logo; - } - - public void setLogo(String logo) { - this.logo = logo; - } - - public String getFooter() { - return footer; - } - - public void setFooter(String footer) { - this.footer = footer; - } - - public String getArr() { - return arr; - } - - public void setArr(String arr) { - this.arr = arr; - } - - public String getBaseUrl() { - return baseUrl; - } - - public void setBaseUrl(String baseUrl) { - this.baseUrl = baseUrl; - } - - public String getChartServerUrl() { - return chartServerUrl; - } - - public void setChartServerUrl(String chartServerUrl) { - this.chartServerUrl = chartServerUrl; - } - - public String getDefaultChartUrl() { - return defaultChartUrl; - } - - public void setDefaultChartUrl(String defaultChartUrl) { - this.defaultChartUrl = defaultChartUrl; - } - - public String getPieChartUrl() { - return pieChartUrl; - } - - public void setPieChartUrl(String pieChartUrl) { - this.pieChartUrl = pieChartUrl; - } - - public String getLineChartUrl() { - return lineChartUrl; - } - - public void setLineChartUrl(String lineChartUrl) { - this.lineChartUrl = lineChartUrl; - } - - public String getArticleSign() { - return articleSign; - } - - public void setArticleSign(String articleSign) { - this.articleSign = articleSign; - } - - public String getBaseNginxPath() { - return baseNginxPath; - } - - public void setBaseNginxPath(String baseNginxPath) { - this.baseNginxPath = baseNginxPath; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("icon", icon) - .append("dot", dot) - .append("logo", logo) - .append("footer", footer) - .append("arr", arr) - .append("articleSign", articleSign) - .append("baseUrl", baseUrl) - .append("chartServerUrl", chartServerUrl) - .append("defaultChartUrl", defaultChartUrl) - .append("pieChartUrl", pieChartUrl) - .append("lineChartUrl", lineChartUrl) - .append("baseNginxPath", baseNginxPath) - .toString(); - } - } - - public static class Email { - private String sender; - private String subject; - - public String getSender() { - return sender; - } - - public void setSender(String sender) { - this.sender = sender; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("sender", sender) - .append("subject", subject) - .toString(); - } - } - - public static class Thrift { - private String ip; - private Integer port; - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - public Integer getPort() { - return port; - } - - public void setPort(Integer port) { - this.port = port; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("ip", ip) - .append("port", port) - .toString(); - } - } - - public static class ReportBehaviorInterface { - private String reportInterface; - private String manualReportInterface; - - public String getReportInterface() { - return reportInterface; - } - - public void setReportInterface(String reportInterface) { - this.reportInterface = reportInterface; - } - - public String getManualReportInterface() { - return manualReportInterface; - } - - public void setManualReportInterface(String manualReportInterface) { - this.manualReportInterface = manualReportInterface; - } - } - - public static class ManualImage { - private String path; - private String userUploadPath; - private String reportHeadPath; - private String chartsPath; - - public String getPath() { - return path; - } - - public void setPath(String path) { - this.path = path; - } - - public String getUserUploadPath() { - return userUploadPath; - } - - public void setUserUploadPath(String userUploadPath) { - this.userUploadPath = userUploadPath; - } - - public String getReportHeadPath() { - return reportHeadPath; - } - - public void setReportHeadPath(String reportHeadPath) { - this.reportHeadPath = reportHeadPath; - } - - public String getChartsPath() { - return chartsPath; - } - - public void setChartsPath(String chartsPath) { - this.chartsPath = chartsPath; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("path", path) - .append("userUploadPath", userUploadPath) - .append("reportHeadPath", reportHeadPath) - .append("chartsPath", chartsPath) - .toString(); - } - } - - public ReportImage getReportImage() { - return reportImage; - } - - public void setReportImage(ReportImage reportImage) { - this.reportImage = reportImage; - } - - public static class ReportImage { - private String chartsPath; - - public String getChartsPath() { - return chartsPath; - } - - public void setChartsPath(String chartsPath) { - this.chartsPath = chartsPath; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("chartsPath", chartsPath) - .toString(); - } - } - - public static class Screen { - private Integer limit; - - public Integer getLimit() { - return limit; - } - - public void setLimit(Integer limit) { - this.limit = limit; - } - - @Override - public String toString() { - return new ToStringBuilder(this) - .append("limit", limit) - .toString(); - } - } - - public static class ThreadConfig { - private int threadLimit = 1000; - - public long getAwaitTermination() { - return awaitTermination; - } - - public void setAwaitTermination(long awaitTermination) { - this.awaitTermination = awaitTermination; - } - - private long awaitTermination = 20L; - - public int getThreadLimit() { - return threadLimit; - } - - public void setThreadLimit(int threadLimit) { - this.threadLimit = threadLimit; - } - } - -} \ No newline at end of file diff --git a/cl_search_api/src/main/java/com/bfd/mf/controller/SearchAnalysisController.java b/cl_search_api/src/main/java/com/bfd/mf/controller/SearchAnalysisController.java deleted file mode 100644 index 647be72..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/controller/SearchAnalysisController.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.bfd.mf.controller; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.service.SearchAnalysisService; -import com.bfd.mf.service.SearchKeywordsCouldService; -import com.bfd.mf.common.util.analysis.DataAnalysisUtils; -import com.bfd.mf.common.util.enums.RTCodeEnum; -import com.bfd.mf.common.util.slice.SliceScrollUtil; -import com.bfd.mf.common.web.component.wrapper.ResponseWrapper; -import com.bfd.nlp.common.util.constants.MediaTypes; -import io.swagger.annotations.ApiOperation; -import org.apache.catalina.servlet4preview.http.HttpServletRequest; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.WebDataBinder; -import org.springframework.web.bind.annotation.*; - -import javax.naming.ldap.PagedResultsControl; -import javax.validation.ConstraintViolation; -import javax.validation.Validation; -import javax.validation.Validator; -import javax.validation.ValidatorFactory; -import java.util.List; -import java.util.Set; - -@Controller -@RequestMapping("/analysis") -@ResponseBody -public class SearchAnalysisController { - private static final Logger logger = LoggerFactory.getLogger(SearchAnalysisController.class); - - @Autowired - private SearchAnalysisService searchAnalysisService; - @Autowired - private SearchKeywordsCouldService searchKeywordsCouldService; - /** - * 查询总体分析结果 - */ - @ApiOperation(value = "查询总体分析结果", httpMethod = "POST") - @PostMapping(value = "/trend/lineAll", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - @ResponseBody - public JSONObject queryAll(@RequestBody QueryRequest queryRequest) { - logger.info("[queryAll] partial / Params: {}", queryRequest); - JSONObject jsonObject; - try { - jsonObject = searchAnalysisService.getAnalysisResponse(queryRequest); - - } catch (Exception e) { - logger.error("[queryDataByCrawl error = ]", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_FAIL); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, jsonObject); - } - - @RequestMapping(value = "/cloudCrawl", method = RequestMethod.POST, consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - public JSONObject queryWordCloudCountCrawl(@RequestBody QueryRequest queryRequest) { - logger.info("[queryWordCloudCountCrawl] partial / Params: {}", queryRequest); - JSONObject cloudCounts; - try { - cloudCounts = searchKeywordsCouldService.dataAnalysisCloud(queryRequest); - } catch (Exception e) { - logger.error("[queryWordCloudCountCrawl] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, cloudCounts); - } - - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/controller/SearchDataController.java b/cl_search_api/src/main/java/com/bfd/mf/controller/SearchDataController.java deleted file mode 100644 index 86a3a10..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/controller/SearchDataController.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.bfd.mf.controller; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.service.SearchDataService; -import com.bfd.mf.common.util.enums.RTCodeEnum; -import com.bfd.mf.common.web.component.wrapper.ResponseWrapper; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.WebDataBinder; -import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.ApiOperation; -import com.bfd.nlp.common.util.constants.MediaTypes; -import javax.validation.Validation; -import javax.validation.Validator; -import javax.validation.ValidatorFactory; - -@Controller -@RequestMapping("/crawl") -@ResponseBody -public class SearchDataController { - private static final Logger logger = LoggerFactory.getLogger(SearchDataController.class); - - @Autowired - private SearchDataService searchDataService; - - /** - * 查询数据列表 - */ - @ApiOperation(value = "查询数据列表", httpMethod = "POST") - @PostMapping(value = "/subject/query", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - @ResponseBody - public JSONObject queryDataList(@RequestBody QueryRequest queryRequest) { - JSONObject result; - try { - result = searchDataService.queryDataList(queryRequest); - } catch (Exception e) { - logger.error("[queryData] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, result); - } - - - @ApiOperation(value = "查询", httpMethod = "POST") - @PostMapping(value = "/subject/getCount", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - @ResponseBody - public JSONObject getCount(@RequestBody QueryRequest queryRequest) { - JSONObject result = new JSONObject(); - try { - result = searchDataService.queryCountBySubjectIds(queryRequest,result); - } catch (Exception e) { - logger.error("[getCount] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, result); - } - - - @ApiOperation(value = "查询数据列表", httpMethod = "POST") - @PostMapping(value = "/subject/getInfoByDocId", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - @ResponseBody - public JSONObject getInfoByDocId(@RequestBody QueryRequest queryRequest) { - JSONObject result; - try { - result = searchDataService.queryOneDataByDocId(queryRequest); - } catch (Exception e) { - logger.error("[getInfoByDocId] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, result); - } - - - @ApiOperation(value = "查询数据列表", httpMethod = "POST") - @PostMapping(value = "/getCommentsByDocId", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - public JSONObject getCommentsByDocId(@RequestBody QueryRequest queryRequest) { - JSONObject result; - try { - result = searchDataService.queryComments(queryRequest); - - } catch (Exception e) { - logger.error("[getCommentsByDocId] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, result); - } - - - @ApiOperation(value = "查询数据列表", httpMethod = "POST") - @PostMapping(value = "/getCountByCrawlDataFlag", consumes = MediaTypes.JSON_UTF_8, produces = MediaTypes.JSON_UTF_8) - public JSONObject getCountByCrawlDataFlag(@RequestBody QueryRequest queryRequest) { - JSONObject result; - try { - result = searchDataService.queryCountByCrawlDataFlag(queryRequest); - - } catch (Exception e) { - logger.error("[getCommentsByDocId] Failed,The error message is :{}", e); - return ResponseWrapper.buildResponse(RTCodeEnum.C_SERVICE_NOT_AVAILABLE, "Query failed"); - } - return ResponseWrapper.buildResponse(RTCodeEnum.C_OK, result); - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/service/SearchAnalysisService.java b/cl_search_api/src/main/java/com/bfd/mf/service/SearchAnalysisService.java deleted file mode 100644 index 9681834..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/service/SearchAnalysisService.java +++ /dev/null @@ -1,441 +0,0 @@ -package com.bfd.mf.service; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.util.analysis.DataAnalysisUtils; -import com.bfd.mf.common.util.analysis.DateTrendUtils; -import com.bfd.mf.common.util.constants.ConditionCommon; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.slice.SliceScrollUtil; -import com.bfd.mf.common.util.spread.SpreadServiceUtil; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.common.web.vo.view.analysis.DataLineCount; -import com.bfd.mf.common.web.vo.view.analysis.DataPieCount; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorBaseEntity; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.mf.common.util.es.MonitorConstant; -import net.logstash.logback.encoder.org.apache.commons.lang.exception.ExceptionUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.text.ParseException; -import java.util.*; -import java.util.stream.Collectors; -import java.util.stream.IntStream; - -@Service -public class SearchAnalysisService { - private static Logger logger = LoggerFactory.getLogger(SearchAnalysisService.class); - @Autowired - private SliceScrollUtil sliceScrollUtil; - - public JSONObject getAnalysisResponse(QueryRequest queryRequest) { - JSONObject jsonObject = new JSONObject(); - try{ - List esMonitorEntity = sliceScrollUtil.fetchResultSubjectCache(queryRequest, ESConstant.FIELD_LIST_ANALYSIS); - jsonObject = dataAnalysisTrendByDayQueryTimes(queryRequest, esMonitorEntity); - jsonObject = DataAnalysisUtils.fetchPieAndCountNumberByLineJson(jsonObject); - - - }catch (Exception e){ - e.printStackTrace(); - } - return jsonObject; - } - - private JSONObject dataAnalysisTrendByDayQueryTimes(QueryRequest queryRequest, List esMonitorEntityList) { - JSONObject jsonResult = new JSONObject(); - System.out.println(esMonitorEntityList.size()); - jsonResult.put("totalNumber", esMonitorEntityList.size()); - Map emotionEngMaps = MonitorConstant.emotionEngByThresholdMaps(); - try { - // 按发布时间排序 - esMonitorEntityList.sort((o1, o2) -> { - // 发布时间相同的 - return o1.getPubTime().compareTo(o2.getPubTime()) == 0 ? o1.getCrawlTime().compareTo(o2.getCrawlTime()) : o1.getPubTime().compareTo(o2.getPubTime()); - }); - - Long startTime = queryRequest.getStartTime(); - Long endTime = queryRequest.getEndTime(); - // 按小时 时间序列 - Long[] timeList = DataAnalysisUtils.getTimeList(startTime, endTime, ConditionCommon.HOUR); - // 字符时间区间 - String[] timeStringList = SpreadServiceUtil.convertToTimeStringList(timeList, ConditionCommon.HOUR); - // 数据遍历统计每个渠道时间段的总数 - // 每个渠道时间段统计 - Map> channelMaps = DataAnalysisUtils.fetchPerChannelCountByListData(esMonitorEntityList, timeList, ConditionCommon.HOUR); - // 结果 - ArrayList arrayList = new ArrayList<>(Arrays.asList(timeList)); - // 各个渠道时间区间统计结果 - Map> stringListMap = parseTrendDataResult(channelMaps, arrayList, getChannelMap()); - // 情感时间段统计 - Map> negativeChannelMaps = fetchPerEmotionCountByData( - esMonitorEntityList, - timeList, - ConditionCommon.HOUR); - - Map> emotionMaps = new HashMap<>(); - emotionMaps.put("0.0-0.2", new ArrayList<>()); - emotionMaps.put("0.2-0.8", new ArrayList<>()); - emotionMaps.put("0.8-1.0", new ArrayList<>()); - Map> commonChannelMaps = new HashMap<>(); - commonChannelMaps.put(ESConstant.COMMON_TAG, negativeChannelMaps.get(ESConstant.COMMON_TAG)); - Map> neuterChannelMaps = new HashMap<>(); - neuterChannelMaps.put(ESConstant.NEUTER_TAG, negativeChannelMaps.get(ESConstant.NEUTER_TAG)); - negativeChannelMaps.remove(ESConstant.NEUTER_TAG); - negativeChannelMaps.remove(ESConstant.COMMON_TAG); - - // 负面 - DataAnalysisUtils.parseTimeSeries(negativeChannelMaps, emotionMaps, ESConstant.NEGATIVE_TAG, channelMaps); - // 中性 - DataAnalysisUtils.parseTimeSeries(neuterChannelMaps, emotionMaps, ESConstant.NEUTER_TAG, channelMaps); - // 正面 - DataAnalysisUtils.parseTimeSeries(commonChannelMaps, emotionMaps, ESConstant.COMMON_TAG, channelMaps); - - // 各个时间段的统计结果 - Long[] docNumList = DataAnalysisUtils.fetchPerTimeByPerChannelCountResult(stringListMap, timeList); - Map> emotionCountMap = parseTrendDataResult(emotionMaps, arrayList, emotionEngMaps); - jsonResult.put("emotions", emotionCountMap); - - // 覆盖媒体 - // long mediaNumber = esEntityList.stream().map(ESMonitorBaseEntity::getSource).collect(Collectors.toSet()).size(); - Set mediaSet = new HashSet<>(); - // 站点数量统计 - esMonitorEntityList.forEach(e -> { - if (e.getDocType().equals(ESConstant.WEI_XIN)) { - mediaSet.add(ESConstant.WEI_XIN); - } else { - mediaSet.add(e.getSource()); - } - }); - jsonResult.put("totalMediaNumber", mediaSet.size()); - - // 敏感覆盖媒体 - Set negativeSourceSet = new HashSet<>(); - for (ESMonitorEntity esMonitorEntity : esMonitorEntityList) { -// List emotionEntryList = esMonitorEntity.getEmotionEntry(); - String sentimentTag = getSentimentTagBySubject(esMonitorEntity.getSysSentiment()); - if (sentimentTag.equals(ESConstant.NEGATIVE_TAG)) { - negativeSourceSet.add(esMonitorEntity.getSource()); - } - } - jsonResult.put("negativeMediaNumber", negativeSourceSet.size()); - // jsonResult.put("negativeMediaNumber", 0L); - // 横坐标时间 - jsonResult.put("abscissa", timeStringList); - jsonResult.put("total", docNumList); - - // 省份统计 - jsonResult.put(ConditionCommon.PROVINCE, fetchArea(esMonitorEntityList, ConditionCommon.PROVINCE)); - // 市统计 - jsonResult.put(ConditionCommon.CITY, fetchArea(esMonitorEntityList, ConditionCommon.CITY)); - - // 天 - JSONArray dayArr = DateTrendUtils.convertStrTime(timeList, ConditionCommon.DAY); - JSONArray dayCountByHourData = DateTrendUtils.getDayCountByHourData(timeList, dayArr, docNumList); - Map arrayDayMap = new HashMap<>(); - arrayDayMap.put(ESConstant.NEGATIVE_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEGATIVE_CN_TAG), timeList, dayArr, ConditionCommon.DAY)); - arrayDayMap.put(ESConstant.COMMON_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.COMMON_CN_TAG), timeList, dayArr, ConditionCommon.DAY)); - arrayDayMap.put(ESConstant.NEUTER_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEUTER_CN_TAG), timeList, dayArr, ConditionCommon.DAY)); - jsonResult.put("emotionDay", arrayDayMap); - jsonResult.put("dayArr", dayArr); - jsonResult.put("dayData", dayCountByHourData); - jsonResult.put("channelDay", getEmotionOrChannelTrendTime(stringListMap, timeList, dayArr, ConditionCommon.DAY)); - - // 月 - JSONArray monthArr = DateTrendUtils.convertStrTime(timeList, ConditionCommon.MONTH); - JSONArray monthCountByHourData = DateTrendUtils.getMonthCountByHourData(timeList, monthArr, docNumList); - Map arrayMonthMap = new HashMap<>(); - arrayMonthMap.put(ESConstant.NEGATIVE_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEGATIVE_CN_TAG), timeList, monthArr, ConditionCommon.MONTH)); - arrayMonthMap.put(ESConstant.COMMON_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.COMMON_CN_TAG), timeList, monthArr, ConditionCommon.MONTH)); - arrayMonthMap.put(ESConstant.NEUTER_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEUTER_CN_TAG), timeList, monthArr, ConditionCommon.MONTH)); - jsonResult.put("emotionMonth", arrayMonthMap); - jsonResult.put("monthArr", monthArr); - jsonResult.put("monthData", monthCountByHourData); - jsonResult.put("channelMonth", getEmotionOrChannelTrendTime(stringListMap, timeList, monthArr, ConditionCommon.MONTH)); - - // 年 - JSONArray yearArr = DateTrendUtils.convertStrTime(timeList, ConditionCommon.YEAR); - JSONArray yearCountByHourData = DateTrendUtils.getYearCountByHourData(timeList, monthArr, docNumList); - Map arrayYearMap = new HashMap<>(); - arrayYearMap.put(ESConstant.NEGATIVE_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEGATIVE_CN_TAG), timeList, yearArr, ConditionCommon.YEAR)); - arrayYearMap.put(ESConstant.COMMON_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.COMMON_CN_TAG), timeList, yearArr, ConditionCommon.YEAR)); - arrayYearMap.put(ESConstant.NEUTER_CN_TAG, DataAnalysisUtils.getEmotionOrChannelTrendTime(emotionCountMap.get(ESConstant.NEUTER_CN_TAG), timeList, yearArr, ConditionCommon.YEAR)); - jsonResult.put("emotionYear", arrayYearMap); - jsonResult.put("yearArr", yearArr); - jsonResult.put("yearData", yearCountByHourData); - jsonResult.put("channelYear", getEmotionOrChannelTrendTime(stringListMap, timeList, yearArr, ConditionCommon.YEAR)); - jsonResult.put("channels", stringListMap); - - // 站点统计 - jsonResult.putAll(getMediaALLCountByData(esMonitorEntityList, queryRequest)); - - } catch (Exception e) { - logger.error("[ dataAnalysisTrendByDayQueryTimes Data FullFill] - ERROR - 趋势统计 ES 数据为 null,填充所有渠道、情感走势为 0...", e); - } - return jsonResult; - } - - /** - * 获得各个时间和渠道的统计结果:stringListMap - */ - private Map> parseTrendDataResult(Map> maps, - List lists, - Map engToCnMaps) { - Map> resultMaps = new HashMap<>(); - for (Map.Entry> entry : maps.entrySet()) { - String key = entry.getKey(); - List valueLists = entry.getValue(); - Collections.sort(valueLists); - List timeValue = initLists(lists.size(), 0L); - for (DataLineCount dataLineCount : valueLists) { - if (lists.contains(dataLineCount.getTimestamp())) { - int indexSize = lists.indexOf(dataLineCount.getTimestamp()); - timeValue.set(indexSize, dataLineCount.getData()); - } - } - String name = engToCnMaps.get(key); - if (resultMaps.containsKey(name)) { - List newsAndAppList = resultMaps.get(name); - for (int i = 0; i < newsAndAppList.size(); i++) { - Long data = timeValue.get(i) + newsAndAppList.get(i); - newsAndAppList.set(i, data); - } - resultMaps.put(name, newsAndAppList); - } else { - resultMaps.put(name, timeValue); - } - } - List channels = getChannels(); - if (resultMaps.size() == 0) { - List timeValue = initLists(lists.size(), 0L); - if (!TObjectUtils.isListEmpty(channels)) { - channels.forEach(channel -> resultMaps.put(engToCnMaps.get(channel), timeValue)); - } - } - return resultMaps; - } - - /** - * 获得情感 统计结果 - */ - private Map> fetchPerEmotionCountByData(List cacheEsMonitorEntityList, - Long[] timeList, int type) { - Map> negativeChannelMaps; - // 情感值初始化 - negativeChannelMaps = DataAnalysisUtils.initEmotionList(timeList); - for (ESMonitorEntity esMonitorEntity : cacheEsMonitorEntityList) { - Double sysSentimentValue = esMonitorEntity.getSysSentiment(); - String sentimentTag = ESConstant.COMMON_TAG; - try { - sentimentTag = getSentimentTagBySubject(sysSentimentValue); - } catch (Exception e) { - logger.error("fetchPerEmotionCountByData error ={}", e.getMessage(), e); - } - DataAnalysisUtils.fetchFilterResultByTimeCompare(negativeChannelMaps, sentimentTag, esMonitorEntity, timeList, type); - } - return negativeChannelMaps; - } - public String getSentimentTagBySubject(Double sysSentimentValue) { - return getEmotionChByNum(sysSentimentValue); - } - public static String getEmotionChByNum(Double sysSentimentValue) { - if (sysSentimentValue >= ESConstant.SENTIMENTAL_MID && sysSentimentValue <= ESConstant.SENTIMENTAL_MAX) { - return ESConstant.COMMON_TAG; - } else if (sysSentimentValue > ESConstant.SENTIMENTAL_THRESHOLD && sysSentimentValue <= ESConstant.SENTIMENTAL_MID) { - return ESConstant.NEUTER_TAG; - } else { - return ESConstant.NEGATIVE_TAG; - } - } - - /** - * 城市、地区的统计 - */ - public List fetchArea(List esEntityList, String type) { - List cityLists = new ArrayList<>(); - for (ESMonitorEntity esEntity : esEntityList) { - String name = null; - if (ConditionCommon.PROVINCE.equals(type)) { - // 省 - name = esEntity.getProvince(); - } else if (ConditionCommon.CITY.equals(type)) { - // 市 - name = esEntity.getCity(); - } - fetchAreaByTypeAndName(cityLists, name, type); - } - Collections.sort(cityLists); - return cityLists; - } - public void fetchAreaByTypeAndName(List cityLists, String name, String type) { -// if (type.equals(ESConstant.WEIBO_USER_PROVINCE) && RegionUtils.provinces.contains(name)) { -// DataAnalysisUtils.countWeibo(name, cityLists, 1L); -// } else if (type.equals(ESConstant.WEIBO_USER_CITY) && RegionUtils.cities.contains(name)) { -// DataAnalysisUtils.countWeibo(name, cityLists, 1L); -// } - - } - - - /** - * 情感、渠道 双统计 - */ - private Map getEmotionOrChannelTrendTime(Map> stringListMap, - Long[] timeList, JSONArray timeArr, - Integer timeType) throws ParseException { - Map arrayMonthMap = new HashMap<>(); - List listKey = new ArrayList<>(stringListMap.keySet()); - for (String key : listKey) { - arrayMonthMap.put(key, DataAnalysisUtils.getEmotionOrChannelTrendTime(stringListMap.get(key), timeList, timeArr, timeType)); - } - return arrayMonthMap; - } - - /** - * 站点统计 - */ - private JSONObject getMediaALLCountByData(List esMonitorEntityList, QueryRequest queryRequest) throws Exception { - int limit = queryRequest.getLimit(); - JSONObject mediaCountByData = getMediaCountByData(esMonitorEntityList, limit); - Map> mapCounts = (Map>) mediaCountByData.get(ConditionCommon.MEDIA_COUNTS); - List channelNameList = getChannels(); - List entryKey = new ArrayList<>(mapCounts.keySet()); - List allList = new LinkedList<>(); - for (String key : entryKey) { - switch (key) { - case ESConstant.VIDEO: - allList.addAll(mapCounts.get(key)); - break; - case ESConstant.NEWS: - allList.addAll(mapCounts.get(key)); - break; - case ESConstant.ITEM: - allList.addAll(mapCounts.get(key)); - break; - case ESConstant.SOCIAL: - allList.addAll(mapCounts.get(key)); - break; - default: - break; - } - } - - filterMapCountsByChannelIds(mapCounts, channelNameList); - allList.sort(DataPieCount::compareTo); - - mapCounts.put(ConditionCommon.MEDIA_COUNTS_ALL, allList.size() > limit ? allList.subList(0, limit) : allList); - - Map> orderMap = new LinkedHashMap<>(); - orderSite(orderMap, mapCounts, ConditionCommon.MEDIA_COUNTS_ALL, getChannels()); - orderSite(orderMap, mapCounts, ESConstant.SOCIAL, getChannels()); - orderSite(orderMap, mapCounts, ESConstant.NEWS, getChannels()); - orderSite(orderMap, mapCounts, ESConstant.ZIXUN, getChannels()); - orderSite(orderMap, mapCounts, ESConstant.VIDEO, getChannels()); - orderSite(orderMap, mapCounts, ESConstant.ITEM, getChannels()); - mediaCountByData.clear(); - mediaCountByData.put(ConditionCommon.MEDIA_COUNTS, orderMap); - return mediaCountByData; - } - private void filterMapCountsByChannelIds(Map> mapCounts, List channelNameList) { - List channelNameFilter = new ArrayList<>(); - for (String key : mapCounts.keySet()) { - if (!channelNameList.contains(key)) { - channelNameFilter.add(key); - } - } - for (String channelName : channelNameFilter) { - mapCounts.remove(channelName); - } - } - private JSONObject getMediaCountByData(List cacheEsMonitorEntityList, int topSize) throws Exception { - Map> maps = new HashMap<>(); - JSONObject jsonObject = new JSONObject(); - try { - for (ESMonitorEntity esMonitorEntity : cacheEsMonitorEntityList) { - String source = ""; - String docType = esMonitorEntity.getDocType(); - if (docType.equals(ESConstant.WEI_XIN)) { - source = ESConstant.CH_WEI_XIN; - } else { - source = esMonitorEntity.getSource(); - } - if (maps.containsKey(docType)) { - List list = maps.get(docType); - boolean flag = false; - for (DataPieCount dataPieCount : list) { - if (dataPieCount.getName().equals(source)) { - long value = dataPieCount.getValue() + 1; - dataPieCount.setValue(value); - flag = true; - } - } - if (!flag) { - DataPieCount dataPieCount = new DataPieCount(source, 1L, docType); - list.add(dataPieCount); - } - } else { - List list = new ArrayList<>(); - DataPieCount dataPieCount = new DataPieCount(source, 1L, docType); - list.add(dataPieCount); - maps.put(docType, list); - } - } - for (String str : maps.keySet()) { - List list = maps.get(str); - list.sort((o1, o2) -> { - Long value1 = o1.getValue(); - Long value2 = o2.getValue(); - return ((value2).intValue() - (value1).intValue()); - }); - if (list.size() >= topSize) { - list = list.subList(0, 10); - maps.put(str, list); - } - } - jsonObject.put(ConditionCommon.MEDIA_COUNTS, maps); - return jsonObject; - } catch (Exception e) { - logger.error("getMediaCountByData error = ", ExceptionUtils.getFullStackTrace(e)); - throw new Exception("getMediaCountByData Error", e); - } - } - private void orderSite(Map> orderMap, - Map> mapCounts, - String channel, List subjectChannel) { - if (subjectChannel.contains(channel) || channel.equals(ConditionCommon.MEDIA_COUNTS_ALL) || - (channel.equals(ESConstant.NEWS) )) { - if (mapCounts.containsKey(channel)) { - orderMap.put(channel, mapCounts.get(channel)); - } else { - orderMap.put(channel, new ArrayList<>()); - } - } - } - - - private static List initLists(int size, long defaultValue) { - return IntStream.range(0, size).mapToObj(i -> defaultValue).collect(Collectors.toList()); - } - - private List getChannels() { - List channelsList = new ArrayList<>(); - channelsList.add("social"); - channelsList.add("news"); - channelsList.add("video"); - channelsList.add("item"); - return channelsList; - } - - private Map getChannelMap() { - Map channelMap = new HashMap<>(); - channelMap.put("social","社交媒体"); - channelMap.put("news","新闻资讯"); - channelMap.put("video","网络视频"); - channelMap.put("item","电商"); - return channelMap; - } -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java b/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java deleted file mode 100644 index 3aebfb0..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java +++ /dev/null @@ -1,486 +0,0 @@ -package com.bfd.mf.service; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.service.cache.TopicQueryService; -import com.bfd.mf.common.service.common.CrudService; -import com.bfd.mf.common.service.es.ClusterService; -import com.bfd.mf.common.thread.SubjectQueryDataService; -import com.bfd.mf.common.util.ESServerUtils; -import com.bfd.mf.common.util.cache.ResponseParseUtils; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.service.es.ESCommonService; -import com.bfd.mf.common.util.slice.SliceScrollUtil; -import com.bfd.mf.common.web.entity.mysql.SentimentModify; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.repository.mysql.SentimentRepository; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorBaseEntity; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import org.apache.commons.lang3.StringUtils; -import org.elasticsearch.action.search.SearchRequestBuilder; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.common.unit.TimeValue; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.QueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.elasticsearch.index.query.RangeQueryBuilder; -import org.elasticsearch.search.SearchHit; -import org.elasticsearch.search.sort.SortOrder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.io.Serializable; -import java.util.*; - -@Service -public class SearchDataService extends CrudService implements Serializable { - private static Logger logger = LoggerFactory.getLogger(SearchDataService.class); - @Autowired - private ClusterService clusterService; - @Autowired - private ESCommonService esCommonService; - @Autowired - private ESServerUtils esServerUtils; - @Autowired - private SubjectQueryDataService subjectQueryDataService; - - public void setRepo(SentimentRepository repo) {} - @Override - public SentimentModify copy(SentimentModify from, SentimentModify to) { - return null; - } - - - public JSONObject queryDataList(QueryRequest queryRequest) throws Exception { - - // 先看一下有没有 subjectId ,如果没有的话标识查询的是 全部数据 - Cluster cluster = null; - List currentIndexList = null; - if(null != queryRequest.getSubjectId()){ - System.out.println("subjectId = " + queryRequest.getSubjectId()); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111 - currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId()); - }else{ - logger.info("[SearchDataService] 查询 全局数据"); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.normal_cluster_type); // 109 - currentIndexList = subjectQueryDataService.getIndexListByTimeRange(cluster, queryRequest.getStartTime(),queryRequest.getEndTime()); - } - Long clusterId = cluster.getId(); - logger.info("[SearchDataService] queryDataList clusterId = " + clusterId + " ; currentIndexList :" + currentIndexList.toString()); - - JSONObject jsonObject = new JSONObject(); - Integer limit = queryRequest.getLimit(); //每页的数量 - Integer start = (queryRequest.getPage()-1)*limit; //起始页(0,20,40....) - String orderFlag = queryRequest.getOrder(); // 排序方式 asc/desc - String sortFlag = queryRequest.getSidx(); // 排序字段 - - long sortTimeSeries = System.currentTimeMillis(); - long foldDocAllNumber = 0L; - List esMonitorEntityLists = new ArrayList<>(); - - // 开始查询 - List dataIdList = new ArrayList<>(); - List cacheList = subjectQueryDataService.fetchResponseDataFromCache( - queryRequest,clusterId, - currentIndexList, - ESConstant.FIELD_ID_LIST); - - Map timeSeriesMap = new HashMap<>(); - // 获取查询结果List的总量及结果的map - foldDocAllNumber = ResponseParseUtils.combineEsAndCatchResponse( - cacheList, - timeSeriesMap); - - Collection values = timeSeriesMap.values(); - List timeSeries = new ArrayList<>(values); - - int pageEndNum; //分页结束索引位置位置 - int allSimilarityDocNumber = timeSeries.size(); - System.out.println("allSimilarityDocNumber = "+foldDocAllNumber); - if (allSimilarityDocNumber - start <= 0) { - return jsonObject; - } else if (start + limit - allSimilarityDocNumber > 0) { - pageEndNum = allSimilarityDocNumber; - } else { - pageEndNum = start + limit; - } - - // 将查询结果的 dataId 写入到 dataIdList中 - Map dedupmap = new HashMap<>(); - if(timeSeries.size() > 0) { - if(timeSeries.size() > pageEndNum) { - for (int i = start; i < pageEndNum; i++) { - // dataIdList.add(timeSeries.get(i).getDataId()); - dedupmap.put(timeSeries.get(i).getDataId(),timeSeries.get(i).getDataId()); - } - }else{ - for (int i = start; i < timeSeries.size(); i++) { - // dataIdList.add(timeSeries.get(i).getDataId()); - dedupmap.put(timeSeries.get(i).getDataId(),timeSeries.get(i).getDataId()); - } - } - } - - for (String key : dedupmap.keySet()) { - //System.out.println("key= "+ key + " and value= " + dedupmap.get(key)); - dataIdList.add(dedupmap.get(key)); - } - SearchResponse response = buildDataIdQueryCrawl( - dataIdList.size(), - dataIdList, - orderFlag, - sortFlag, - currentIndexList, - cluster); - - System.out.println("response : " + response); - parseQueryResult(response, esMonitorEntityLists); - - - Long responseStart = System.currentTimeMillis(); - logger.info("[SearchDataService] [responseStart] used :{}", System.currentTimeMillis() - responseStart); - long pageTimeCount = System.currentTimeMillis(); - logger.info("--------------------------third step,structure page search from es ;response of the HTTP status " + - "code is {} ,the time used: {}" + - "-------------------------------------" + (pageTimeCount - sortTimeSeries)); - - - - Collections.sort(esMonitorEntityLists); -// esMonitorListEntity.setAfterFoldNumber(foldDocAllNumber); // 折叠后的总量 - jsonObject.put("foldDocAllNumber",foldDocAllNumber);// 实际查询总量 - jsonObject.put("monitorLists",esMonitorEntityLists); - return jsonObject; - } - - -// private SearchResponse buildDocIdQueryCrawl(Integer searchSize,List docIdLists, String orderFlag, -// List currentIndexList, Cluster cluster) { -// System.out.println("docIds : "+docIdLists.toString()); -// QueryBuilder docIdQuery = esCommonService.buildStringQueryByField(ESConstant.DOC_ID, docIdLists); -// BoolQueryBuilder conditionQuery = QueryBuilders.boolQuery().filter(docIdQuery); -// SearchRequestBuilder resultBuilder = esServerUtils -// .buildSearchRequestBuilder(cluster.getId(), currentIndexList) -// .setSize(searchSize) -// .setQuery(conditionQuery) -// .setScroll(TimeValue.timeValueMinutes(8)) -// .addSort(ESConstant.PUBTIME, orderFlag.equals(ESConstant.ASC) ? SortOrder.ASC : SortOrder.DESC) -// .addSort(ESConstant.DOC_ID, SortOrder.DESC) -// .setFetchSource(ESConstant.FIELD_LIST_MONITOR_NORMAL, null); -// return resultBuilder.get(); -// } - - private SearchResponse buildDataIdQueryCrawl(Integer searchSize,List dataIdList, String orderFlag,String sortFlag, - List currentIndexList, Cluster cluster) { - if(sortFlag.equals("comment")){ - sortFlag = "commentsCount"; - } - QueryBuilder queryBuilder = esCommonService.buildStringQueryByField(ESConstant._ID, dataIdList); - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery().filter(queryBuilder); - SearchRequestBuilder resultBuilder = esServerUtils - .buildSearchRequestBuilder(cluster.getId(), currentIndexList) - .setSize(searchSize) - .setQuery(boolQueryBuilder) - .setScroll(TimeValue.timeValueMinutes(8)) - .addSort(sortFlag, orderFlag.equals(ESConstant.ASC) ? SortOrder.ASC : SortOrder.DESC) - .setFetchSource(ESConstant.FIELD_LIST_MONITOR_NORMAL, null); - return resultBuilder.get(); - } - - - private void parseQueryResult(SearchResponse response, List esMonitorListEntity) throws Exception { - SearchHit[] hits = response.getHits().getHits(); - for (SearchHit mainMessageHit : hits) { - ESMonitorEntity mainMonitorEntity = parseMainMessage(mainMessageHit); - esMonitorListEntity.add(mainMonitorEntity); - } - } - - - -// private void parseQuery(SearchResponse response, -// Map timeSeriesMap, -// List esMonitorListEntity, -// DataQueryRequest dataQueryRequest, -// Map channelsMap, -// String orderFlag) throws Exception { -// -// /*相似文章量*/ -// SearchHit[] hits = response.getHits().getHits(); -// for (SearchHit mainMessageHit : hits) { -// ESMonitorEntity mainMonitorEntity = parseMainMessage( -// mainMessageHit, -//// timeSeriesMap, -// dataQueryRequest, -// orderFlag); -// -// String cnDocType = channelsMap.get(mainMonitorEntity.getDocType()); -// /**设置中文描述*/ -// mainMonitorEntity.setChinaDocType(cnDocType); -// esMonitorListEntity.add(mainMonitorEntity); -// } -// } - - /** - * 数据检索-抓取数据检索-输出数据解析组装 - */ - private ESMonitorEntity parseMainMessage(SearchHit firstHit) throws Exception { - - Map sourceAsMap = firstHit.getSourceAsMap(); - System.out.println(JSONObject.toJSONString(sourceAsMap)); - String title = "标题为空"; - if(sourceAsMap.containsKey(ESConstant.TITLE)) { - title = sourceAsMap.get(ESConstant.TITLE).toString(); - } - String content = sourceAsMap.get(ESConstant.CONTENT).toString(); - Long pubTime = Long.valueOf(sourceAsMap.get(ESConstant.PUBTIME).toString()); - String source = sourceAsMap.get(ESConstant.SOURCE).toString(); - String docType = sourceAsMap.get(ESConstant.DOC_TYPE).toString(); - String channel = sourceAsMap.get(ESConstant.CHANNEL).toString(); - if (docType.equals("social")) { - title = sourceAsMap.get(ESConstant.AUTHOR).toString(); - } - String url = sourceAsMap.get(ESConstant.URL).toString(); - String docId = sourceAsMap.get(ESConstant.DOC_ID).toString(); - String dataId = sourceAsMap.get(ESConstant.DATA_ID).toString(); - - // 视频链接和存储路径 - String filePath = sourceAsMap.get(ESConstant.FILEPATH).toString(); - boolean is = true; - String isDownload = sourceAsMap.get(ESConstant.ISDOWNLOAD).toString(); - if(!isDownload.equals("true")){ - is = false; - } - String vodeoUrl = sourceAsMap.get(ESConstant.VIDEOURL).toString(); - - ESMonitorEntity esMonitorEntity = new ESMonitorEntity(); - try { - esMonitorEntity.setDocId(docId); - esMonitorEntity.setDataId(dataId); - esMonitorEntity.setTitle(title); - esMonitorEntity.setAuthor(sourceAsMap.get(ESConstant.AUTHOR) == null ? source : (String) sourceAsMap.get(ESConstant.WEIBO_AUTHOR)); - esMonitorEntity.setPubTime(pubTime); - esMonitorEntity.setContent(content); - esMonitorEntity.setDocType(docType); - esMonitorEntity.setChannel(channel); - esMonitorEntity.setSource(source); - esMonitorEntity.setUrl(url); - esMonitorEntity.setPostSource((String) sourceAsMap.getOrDefault(ESConstant.WEIBO_POST_SOURCE, "")); - esMonitorEntity.setSysSentiment(Double.valueOf(sourceAsMap.get(ESConstant.SYS_SENTIMENT).toString())); - - esMonitorEntity.setCommentsCount(Integer.valueOf(sourceAsMap.getOrDefault(ESConstant.COMMENTS_COUNT, 0).toString())); - esMonitorEntity.setQuoteCount(Integer.valueOf(sourceAsMap.getOrDefault(ESConstant.QUOTE_COUNT, 0).toString())); - esMonitorEntity.setAttitudesCount(sourceAsMap.getOrDefault(ESConstant.ATTITUDES_COUNT,"").toString()); - //esMonitorEntity.setAttitudesCount(Integer.valueOf(sourceAsMap.getOrDefault(ESConstant.ATTITUDES_COUNT, 0).toString())); - - esMonitorEntity.setCrawlTime(Long.valueOf(sourceAsMap.get(ESConstant.CRAWLTIME).toString())); - - esMonitorEntity.setIsDownload(is); - esMonitorEntity.setFilePath(filePath); - esMonitorEntity.setVideoUrl(vodeoUrl); - - } catch (Exception e) { - e.printStackTrace(); - } - return esMonitorEntity; - } - - public JSONObject queryComments(QueryRequest queryRequest) { - // 先确认一下 要查的主贴是属于 专题还是 全部数据,因此需要查 subjectId,如果没有 subjectId 这个字段说明要查的是 日期索引的ES - Cluster cluster = null; - List currentIndexList = null; - if(null != queryRequest.getSubjectId()){ // 如果是专题,去专题的索引查就行 - System.out.println("subjectId = " + queryRequest.getSubjectId()); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111 - currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId()); - - }else{ // 如果是全部数据,就直接去 渠道对应的索引查,渠道可以从 docId 中截取出来 - logger.info("[SearchDataService] 查询 全局数据"); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.normal_cluster_type); // 109 - String docId = queryRequest.getDocId(); - String indexType = "cl_"+docId.split("_")[1]; - - //currentIndexList = subjectQueryDataService.getIndexListByTimeRange(cluster, commentQueryRequest.getTimeRange()); - } - System.out.println("currentIndexList : "+currentIndexList); - System.out.println("docId : "+queryRequest.getDocId()); - - JSONObject result = getCommentListByDocId(queryRequest, cluster,currentIndexList); - return result; - } - - private JSONObject getCommentListByDocId(QueryRequest queryRequest, Cluster cluster, List currentIndexList) { - JSONObject json = new JSONObject(); - try{ - String docId = queryRequest.getDocId(); - /**依据文档Id查询对应的文档*/ - QueryBuilder queryBuilder = esCommonService.buildKeyWordsQueryBuilder(docId, ESConstant.DOC_ID); - QueryBuilder queryBuilder1 = QueryBuilders.termQuery(ESConstant.PRIMARY, 0); - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery() - .must(queryBuilder1) - .must(queryBuilder); - - SortOrder flag ; - if(queryRequest.getOrder().equals("desc")) { - flag = SortOrder.DESC; - }else{ - flag = SortOrder.ASC; - } - Integer page = queryRequest.getPage(); - Integer limit = queryRequest.getLimit(); - Integer start = limit * (page-1); - - /**获取信息*/ - SearchRequestBuilder builder = esServerUtils - .buildSearchRequestBuilder(cluster.getId(), currentIndexList) - .setQuery(boolQueryBuilder) - .setFrom(start) - .setSize(limit) - .setFetchSource(ESConstant.FIELD_DATA, null) - .addSort(queryRequest.getSidx(),flag); - - System.out.println(builder); - List comments = new ArrayList<>(); - SearchResponse searchResponse = builder.execute().actionGet(); - - SearchHit[] response = searchResponse.getHits().getHits(); - for (int i = 0; i < response.length; i++) { - JSONObject jsonObject = new JSONObject(); - Map result = response[i].getSourceAsMap(); - jsonObject.putAll(result); - comments.add(jsonObject); - } - - json.put("commentLists",comments); - json.put("allDocNumber",searchResponse.getHits().getTotalHits()); - }catch (Exception e){ - e.printStackTrace(); - } - return json; - } - - public JSONObject queryOneDataByDocId(QueryRequest queryRequest) { - logger.info("[SearchDataService] queryOneDataByDocId,request = {}", queryRequest); - - // 先确认一下 要查的主贴是属于 专题还是 全部数据,因此需要查 subjectId,如果没有 subjectId 这个字段说明要查的是 日期索引的ES - Cluster cluster = null; - List currentIndexList = null; - if(null != queryRequest.getSubjectId()){ // 如果是专题,去专题的索引查就行 - System.out.println("subjectId = " + queryRequest.getSubjectId()); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111 - currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId()); - - }else{ // 如果是全部数据,就直接去 渠道对应的索引查,渠道可以从 docId 中截取出来 - logger.info("[SearchDataService] queryOneDataByDocId 查询 全局数据"); - cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.normal_cluster_type); // 109 - String docId = queryRequest.getDocId(); - String indexType = "cl_"+docId.split("_")[1]; - - //currentIndexList = subjectQueryDataService.getIndexListByTimeRange(cluster, commentQueryRequest.getTimeRange()); - } - - String docId = queryRequest.getDocId(); - - JSONObject jsonObject = getOneDataByDocId(docId, cluster, currentIndexList); - return jsonObject; - } - - private JSONObject getOneDataByDocId(String docId, Cluster cluster, List currentIndexList) { - /**依据文档Id查询对应的文档*/ - QueryBuilder queryBuilder = esCommonService.buildKeyWordsQueryBuilder(docId, ESConstant.DOC_ID); - QueryBuilder queryBuilder1 = QueryBuilders.termQuery(ESConstant.PRIMARY, 1); - BoolQueryBuilder conditionQuery = QueryBuilders.boolQuery().must(queryBuilder).must(queryBuilder1); - - JSONObject jsonObject = new JSONObject(); - - /**获取信息*/ - SearchRequestBuilder builder = esServerUtils - .buildSearchRequestBuilder(cluster.getId(), currentIndexList) - .setQuery(conditionQuery) - .setSize(1) - .setFrom(0) - .setFetchSource(ESConstant.FIELD_DATA, null); - SearchResponse searchDataResponse = builder.execute().actionGet(); - Map result = searchDataResponse.getHits().getHits()[0].getSourceAsMap(); - result.entrySet().stream() - .forEach(entry -> { - jsonObject.put(entry.getKey(), entry.getValue()); - }); - - return jsonObject; - } - - public JSONObject queryCountBySubjectIds(QueryRequest queryRequest,JSONObject result) { - try{ - String subjectId = queryRequest.getSubjectId(); - System.out.println("subjectId = " + queryRequest.getSubjectId()); - Cluster cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111 - List currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId()); - result.put("subjectId",subjectId); - Long todayTotalCount = getTodadyTotalCount(cluster,currentIndexList); - Long totalCount = getTotalCount(cluster,currentIndexList); - result.put("todayTotalCount",todayTotalCount); - result.put("totalCount",totalCount); - - }catch (Exception e){ - e.printStackTrace(); - } - return result; - } - - private Long getTotalCount(Cluster cluster, List currentIndexList) { - Long count = 0L ; - try { - QueryBuilder queryBuilder = QueryBuilders.termQuery(ESConstant.PRIMARY, 1); - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery().must(queryBuilder); - - SearchRequestBuilder builder = esServerUtils - .buildSearchRequestBuilder(cluster.getId(), currentIndexList) - .setQuery(boolQueryBuilder); - - System.out.println("totalCount : "+builder); - SearchResponse searchDataResponse = builder.execute().actionGet(); - count = searchDataResponse.getHits().getTotalHits(); - }catch (Exception e){ - e.printStackTrace(); - } - return count; - } - - private Long getTodadyTotalCount(Cluster cluster, List currentIndexList) { - Long count = 0L ; - try { - Long startTime = 1596211200000L; - Long endTime = new Date().getTime(); - QueryBuilder queryBuilder1 = QueryBuilders.termQuery(ESConstant.PRIMARY, 1); - RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("pubTime").gte(startTime).lt(endTime); - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery() - .must(queryBuilder1) - .must(rangeQueryBuilder); - - SearchRequestBuilder builder = esServerUtils - .buildSearchRequestBuilder(cluster.getId(), currentIndexList) - .setQuery(boolQueryBuilder); - - System.out.println("todayTotalCount : "+builder); - SearchResponse searchDataResponse = builder.execute().actionGet(); - count = searchDataResponse.getHits().getTotalHits(); - }catch (Exception e){ - e.printStackTrace(); - } - return count; - } - - public JSONObject queryCountByCrawlDataFlag(QueryRequest queryRequest) { - JSONObject result = new JSONObject(); - try{ - - }catch (Exception e){ - e.printStackTrace(); - } - return result; - } - -} diff --git a/cl_search_api/src/main/java/com/bfd/mf/service/SearchKeywordsCouldService.java b/cl_search_api/src/main/java/com/bfd/mf/service/SearchKeywordsCouldService.java deleted file mode 100644 index 110b7ba..0000000 --- a/cl_search_api/src/main/java/com/bfd/mf/service/SearchKeywordsCouldService.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.bfd.mf.service; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.common.service.es.ClusterService; -import com.bfd.mf.common.service.text.TextService; -import com.bfd.mf.common.thread.SubjectQueryDataService; -import com.bfd.mf.common.util.constants.ConditionCommon; -import com.bfd.mf.common.util.constants.ESConstant; -import com.bfd.mf.common.util.slice.SliceScrollUtil; -import com.bfd.mf.common.util.utility.CollectionUtils; -import com.bfd.mf.common.web.entity.mysql.cache.Cluster; -import com.bfd.mf.common.web.vo.params.QueryRequest; -import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.*; - -@Service -public class SearchKeywordsCouldService{ - private static Logger logger = LoggerFactory.getLogger(SearchKeywordsCouldService.class); - private static final int weightValue = 1; - - @Autowired - private TextService textService; - @Autowired - private SliceScrollUtil sliceScrollUtil; - - /** - * 词云统计接口 - */ - public JSONObject dataAnalysisCloud(QueryRequest queryRequest){ - long start = System.currentTimeMillis(); - JSONObject jsonObject = new JSONObject(); - /**词云返回个数*/ - int topSize = queryRequest.getLimit(); - logger.info("[SearchKeywordsCouldService] dataAnalysisCloud : the top size is:{} ", topSize); - try { - List cacheEsMonitorEntityList = sliceScrollUtil.fetchResultSubjectCache(queryRequest,ESConstant.FIELD_CLOUD_ANALYSIS); - - Map keyWordsMaps = new HashMap<>(); - Map placesWordsMaps = new HashMap<>(); // 地点 - Map emojiWordsMaps = new HashMap<>(); // 表情 - Map hashTagWordsMaps = new HashMap<>(); // 话题 - Map opinionsWordsMaps = new HashMap<>(); // 评价 -// List hlKeywordsList = new ArrayList<>(); - for (ESMonitorEntity esMonitorEntity : cacheEsMonitorEntityList) { - List hlKeyWords = esMonitorEntity.getHlKeyWords(); - getMapCloudKeyWords(placesWordsMaps, esMonitorEntity.getPlaces()); - // 表情 - getExpressionMapCloudKeyWords(emojiWordsMaps, esMonitorEntity.getExpression()); - // 话题 - getMapCloudKeyWords(hashTagWordsMaps, esMonitorEntity.getHashTag()); - // 评价 - getMapCloudKeyWords(opinionsWordsMaps, esMonitorEntity.getOpinions()); - - Map finalKeyWordsMaps = keyWordsMaps; - hlKeyWords.forEach(el -> finalKeyWordsMaps.merge(el, 1, (a, b) -> a + b)); - Set wordsSets = new HashSet<>(Arrays.asList(StringUtils.split(String.valueOf(hlKeyWords), " "))); - for (String key : wordsSets) { - if (TStringUtils.isNotEmpty(key) && key.length() > 1 && !key.equals("null")) { - // 统计 - key = key.replace("[","").replace("]",""); - keyWordsMaps.merge(key, weightValue, (a, b) -> a + b); - } - } - } - Map keyWordsResultMap = new HashMap<>(); - Map placesWordsResultMap = new HashMap<>(); - CollectionUtils.sortByValueForListSubTopSize(keyWordsMaps, topSize * 2, keyWordsResultMap); - CollectionUtils.sortByValueForListSubTopSize(placesWordsMaps, topSize * 2, placesWordsResultMap); - //sortByValueForListSubTopSize - Long keyWordsStart = System.currentTimeMillis(); - jsonObject.put(ConditionCommon.WORD_CLOUD, CollectionUtils.sortByValueForList(textService.post(keyWordsResultMap, 1), topSize)); - logger.info("[keysWords Execute Time one] the time used is {} ms", System.currentTimeMillis() - keyWordsStart); - Long placesWordsStart = System.currentTimeMillis(); - jsonObject.put(ConditionCommon.PLACE_CLOUD, CollectionUtils.sortByValueForList(textService.post(placesWordsResultMap, 2), topSize)); - logger.info("[placeWords Exceute Time two] the time used is {} ms", System.currentTimeMillis() - placesWordsStart); - jsonObject.put(ConditionCommon.HASH_TAG_CLOUD, CollectionUtils.sortByValueForList(hashTagWordsMaps, topSize)); - jsonObject.put(ConditionCommon.EMOJI_CLOUD, CollectionUtils.sortByValueForList(emojiWordsMaps, topSize)); - jsonObject.put(ConditionCommon.OPINION_CLOUD, CollectionUtils.sortByValueForList(opinionsWordsMaps, topSize)); - - logger.info("[SearchKeywordsCouldService ] the time used is {} ms", (System.currentTimeMillis() - start)); - } catch (Exception e) { - logger.error("[SearchKeywordsCouldService] Is Error", e); - } - return jsonObject; - } - - /** - * 词云统计 - */ - private void getMapCloudKeyWords(Map map, List cloudKeyWord) { - if (TObjectUtils.nonNull(cloudKeyWord)) { - cloudKeyWord.forEach(aCloudKeyWord -> map.merge(aCloudKeyWord, weightValue, (a, b) -> a + b)); - } - } - /** - * 表情 词云 - */ - private void getExpressionMapCloudKeyWords(Map map, List expression) { - if (TObjectUtils.nonNull(expression)) { - for (Object o : expression) { - if (o instanceof Map) { - Map expressionMap = (Map) o; - map.merge(String.valueOf(expressionMap.get("name")), weightValue, (a, b) -> a + b); - } - } - } - } -} diff --git a/cl_search_api/src/main/main2.iml b/cl_search_api/src/main/main2.iml deleted file mode 100644 index 27c1ddb..0000000 --- a/cl_search_api/src/main/main2.iml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_search_api/src/main/resources/application.yml b/cl_search_api/src/main/resources/application.yml deleted file mode 100644 index 3b0a54c..0000000 --- a/cl_search_api/src/main/resources/application.yml +++ /dev/null @@ -1,29 +0,0 @@ -server: - port: 18909 - tomcat: - uri-encoding: UTF-8 - max-threads: 800 - maxHttpHeaderSize: 655360 - http2: - enabled: true - -spring: - datasource: - driver-class-name: com.mysql.jdbc.Driver - username: root - password: bfd123 - url: jdbc:mysql://172.26.11.113:3306/bfd_sq_data?useOldAliasMetadataBehavior=true&characterEncoding=UTF-8&zeroDateTimeBehavior=round - hikari: - maximum-pool-size: 10 - minimum-idle: 1 - jpa: - open-in-view: false - database: mysql - - -####### -bfd.api.mf: - textPostUrl: http://rule.sq.baifendian.com/nerplace - emotionPostUrl : http://172.18.1.166:15038/bertsentiment - wordCloudPostUrl : http://rule.sq.baifendian.com/wordcloud - diff --git a/cl_search_api/src/main/resources/log4j.properties b/cl_search_api/src/main/resources/log4j.properties deleted file mode 100644 index 8ca672a..0000000 --- a/cl_search_api/src/main/resources/log4j.properties +++ /dev/null @@ -1,18 +0,0 @@ -log4j.rootLogger=INFO, error - -###### error appender definition ####### -log4j.appender.error=org.apache.log4j.DailyRollingFileAppender -log4j.appender.error.File=logs/sdkclient_error.log -log4j.appender.error.Append=true -log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH -log4j.appender.error.layout=org.apache.log4j.PatternLayout -log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] %m%n - -#error only -log4j.appender.error.filter.F1=org.apache.log4j.varia.LevelRangeFilter -log4j.appender.error.filter.F1.LevelMin=ERROR -log4j.appender.error.filter.F1.LevelMax=ERROR -# -log4j.appender.error.filter.F2=org.apache.log4j.varia.LevelMatchFilter -log4j.appender.error.filter.F2.levelToMatch=WARN -log4j.appender.error.filter.F2.acceptOnMatch=false \ No newline at end of file diff --git a/cl_search_api/src/main/resources/log4j2.properties b/cl_search_api/src/main/resources/log4j2.properties deleted file mode 100644 index 07964d7..0000000 --- a/cl_search_api/src/main/resources/log4j2.properties +++ /dev/null @@ -1,32 +0,0 @@ -#### ����### -#log4j.rootLogger = stdout,D,E,I -# -#### �����Ϣ������̧ ### -#log4j.appender.stdout = org.apache.log4j.ConsoleAppender -#log4j.appender.stdout.Target = System.out -#log4j.appender.stdout.layout = org.apache.log4j.PatternLayout -#log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n -# -#### ���INFO �������ϵ���־�ļ����� ### -#log4j.appender.I = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.I.File = log_info.log -#log4j.appender.I.Append = true -#log4j.appender.I.Threshold = INFO -#log4j.appender.I.layout = org.apache.log4j.PatternLayout -#log4j.appender.I.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n -# -#### ���DEBUG �������ϵ���־�ļ����� ### -#log4j.appender.D = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.D.File = log_debug.log -#log4j.appender.D.Append = true -#log4j.appender.D.Threshold = INFO -#log4j.appender.D.layout = org.apache.log4j.PatternLayout -#log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n -# -#### ���ERROR �������ϵ���־�ļ����� ### -#log4j.appender.E = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.E.File = log_error.log -#log4j.appender.E.Append = true -#log4j.appender.E.Threshold = ERROR -#log4j.appender.E.layout = org.apache.log4j.PatternLayout -#log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n diff --git a/cl_search_api/target/classes/application.yml b/cl_search_api/target/classes/application.yml deleted file mode 100644 index 3b0a54c..0000000 --- a/cl_search_api/target/classes/application.yml +++ /dev/null @@ -1,29 +0,0 @@ -server: - port: 18909 - tomcat: - uri-encoding: UTF-8 - max-threads: 800 - maxHttpHeaderSize: 655360 - http2: - enabled: true - -spring: - datasource: - driver-class-name: com.mysql.jdbc.Driver - username: root - password: bfd123 - url: jdbc:mysql://172.26.11.113:3306/bfd_sq_data?useOldAliasMetadataBehavior=true&characterEncoding=UTF-8&zeroDateTimeBehavior=round - hikari: - maximum-pool-size: 10 - minimum-idle: 1 - jpa: - open-in-view: false - database: mysql - - -####### -bfd.api.mf: - textPostUrl: http://rule.sq.baifendian.com/nerplace - emotionPostUrl : http://172.18.1.166:15038/bertsentiment - wordCloudPostUrl : http://rule.sq.baifendian.com/wordcloud - diff --git a/cl_search_api/target/classes/log4j.properties b/cl_search_api/target/classes/log4j.properties deleted file mode 100644 index 8ca672a..0000000 --- a/cl_search_api/target/classes/log4j.properties +++ /dev/null @@ -1,18 +0,0 @@ -log4j.rootLogger=INFO, error - -###### error appender definition ####### -log4j.appender.error=org.apache.log4j.DailyRollingFileAppender -log4j.appender.error.File=logs/sdkclient_error.log -log4j.appender.error.Append=true -log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH -log4j.appender.error.layout=org.apache.log4j.PatternLayout -log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] %m%n - -#error only -log4j.appender.error.filter.F1=org.apache.log4j.varia.LevelRangeFilter -log4j.appender.error.filter.F1.LevelMin=ERROR -log4j.appender.error.filter.F1.LevelMax=ERROR -# -log4j.appender.error.filter.F2=org.apache.log4j.varia.LevelMatchFilter -log4j.appender.error.filter.F2.levelToMatch=WARN -log4j.appender.error.filter.F2.acceptOnMatch=false \ No newline at end of file diff --git a/cl_search_api/target/classes/log4j2.properties b/cl_search_api/target/classes/log4j2.properties deleted file mode 100644 index 07964d7..0000000 --- a/cl_search_api/target/classes/log4j2.properties +++ /dev/null @@ -1,32 +0,0 @@ -#### ����### -#log4j.rootLogger = stdout,D,E,I -# -#### �����Ϣ������̧ ### -#log4j.appender.stdout = org.apache.log4j.ConsoleAppender -#log4j.appender.stdout.Target = System.out -#log4j.appender.stdout.layout = org.apache.log4j.PatternLayout -#log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n -# -#### ���INFO �������ϵ���־�ļ����� ### -#log4j.appender.I = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.I.File = log_info.log -#log4j.appender.I.Append = true -#log4j.appender.I.Threshold = INFO -#log4j.appender.I.layout = org.apache.log4j.PatternLayout -#log4j.appender.I.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n -# -#### ���DEBUG �������ϵ���־�ļ����� ### -#log4j.appender.D = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.D.File = log_debug.log -#log4j.appender.D.Append = true -#log4j.appender.D.Threshold = INFO -#log4j.appender.D.layout = org.apache.log4j.PatternLayout -#log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n -# -#### ���ERROR �������ϵ���־�ļ����� ### -#log4j.appender.E = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.E.File = log_error.log -#log4j.appender.E.Append = true -#log4j.appender.E.Threshold = ERROR -#log4j.appender.E.layout = org.apache.log4j.PatternLayout -#log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n diff --git a/cl_stream.iml b/cl_stream.iml deleted file mode 100644 index f409c0e..0000000 --- a/cl_stream.iml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/cl_stream_mybatis.iml b/cl_stream_mybatis/cl_stream_mybatis.iml deleted file mode 100644 index a79cd85..0000000 --- a/cl_stream_mybatis/cl_stream_mybatis.iml +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/pom.xml b/cl_stream_mybatis/pom.xml deleted file mode 100644 index 1842db1..0000000 --- a/cl_stream_mybatis/pom.xml +++ /dev/null @@ -1,199 +0,0 @@ - - - - - - - - - 4.0.0 - - cl_stream_mybatis - - - org.springframework.boot - spring-boot-starter-parent - 1.4.3.RELEASE - - - - - UTF-8 - - true - 1.8 - - - - - - BfdRedisTools-2.0 - BfdRedisTools-2.0 - 1.0.0 - system - ${project.basedir}/../../jarlib/BfdRedisTools-2.0.jar - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-logging - - - - - org.mybatis.spring.boot - mybatis-spring-boot-starter - 1.3.1 - - - com.alibaba - fastjson - 1.1.22 - - - - org.springframework.boot - spring-boot-starter-log4j - 1.3.8.RELEASE - - - - org.springframework.boot - spring-boot-starter-test - test - - - - com.bfd.mf - serviceManager - 2.0-SNAPSHOT - - - - com.bfd.mf - dataSaveManager - 2.0-SNAPSHOT - - - - - javax.servlet - jstl - - - org.apache.tomcat.embed - tomcat-embed-jasper - - - org.apache.poi - poi - 3.15 - - - org.apache.poi - poi-ooxml - 3.15 - - - net.sf.json-lib - json-lib - 2.4 - jdk15 - - - org.elasticsearch - elasticsearch - 6.0.0 - - - org.elasticsearch.client - transport - 6.0.0 - - - - mysql - mysql-connector-java - runtime - - - log4j - log4j - 1.2.17 - - - org.slf4j - slf4j-api - 1.7.25 - - - com.liferay.org.apache.commons.fileupload - com.liferay.org.apache.commons.fileupload - 6.2.0.1 - - - commons-io - commons-io - 2.5 - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - 1.4.2.RELEASE - - com.bfd.mf.TestmybatisApplication - - - - - repackage - - - - - - - maven-compiler-plugin - - 1.8 - 1.8 - - - - org.apache.maven.plugins - maven-jar-plugin - 3.1.1 - - - - - - - - ${project.basedir}/src/main/webapp - - META-INF/resources - - **/** - - - - ${project.basedir}/src/main/resources - - **/** - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/TestmybatisApplication.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/TestmybatisApplication.java deleted file mode 100644 index 62f89d1..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/TestmybatisApplication.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.bfd.mf; - -import org.mybatis.spring.annotation.MapperScan; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -@MapperScan("com.bfd.mf.mapper") -public class TestmybatisApplication { - - public static void main(String[] args) { - try { - SpringApplication.run(TestmybatisApplication.class, args); - }catch (Exception e){ - e.printStackTrace(); - } - } -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/common/ExternalConnCache.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/common/ExternalConnCache.java deleted file mode 100644 index 78442c2..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/common/ExternalConnCache.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.bfd.mf.common; - -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.common.settings.Settings.Builder; -import org.elasticsearch.common.transport.TransportAddress; -import org.elasticsearch.transport.client.PreBuiltTransportClient; -import org.springframework.stereotype.Component; - -import java.net.InetAddress; - - -@Component -public class ExternalConnCache { - - private static final String hosts = "172.18.1.148"; - private static final Integer port = 9303; - private static final String clusterName = "SQ_Mini_new"; - - private static TransportClient transportClient ; - /*private static String hosts; - private static String port; - private static String clusterName; - */ - /*@Value("${externalConn.cache.hosts}") - public void setHosts(String hosts) { - ExternalConnCache.hosts = hosts; - } - - @Value("${externalConn.cache.port}") - public void setPort(String port) { - ExternalConnCache.port = port; - } - - @Value("${externalConn.cache.clusterName}") - public void setClusterName(String clusterName) { - ExternalConnCache.clusterName = clusterName; - }*/ - - public static TransportClient getTransportClient(){ - if(transportClient == null){ - try{ - Builder builder = - Settings.builder().put("cluster.name", clusterName).put("client.transport.sniff", false); - Settings esSettings = builder.build(); - transportClient = new PreBuiltTransportClient(esSettings); - transportClient.addTransportAddress(new TransportAddress(InetAddress.getByName(hosts),Integer.valueOf(port))); - }catch (Exception ex){ - ex.printStackTrace(); - new RuntimeException(ex); - }finally { - - } - } - return transportClient; - - } -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/common/PageBean.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/common/PageBean.java deleted file mode 100644 index 32760b2..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/common/PageBean.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.bfd.mf.common; - -import java.io.Serializable; - - -public class PageBean implements Serializable { - private static final long serialVersionUID = 8656597559014685635L; - private long total; //总记录数 - private long quarycount; // 当前页的数量 <= pageSize,该属性来自ArrayList的size属性 - - - public PageBean() { - - } - - public PageBean(long total, long quarycount) { - this.total = total; - - this.quarycount = quarycount; - } - - public long getTotal() { - return total; - } - - public void setTotal(long total) { - this.total = total; - } - - public long getQuarycount() { - return quarycount; - } - - public void setQuarycount(long quarycount) { - this.quarycount = quarycount; - } - -} \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/config/XmlConfiguration.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/config/XmlConfiguration.java deleted file mode 100644 index cca4ac0..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/config/XmlConfiguration.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.bfd.mf.config; - -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.ImportResource; - -@Configuration -@ImportResource({"classpath:/com/bfd/mf/spring/applicationContext.xml"}) -public class XmlConfiguration { - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/controller/CompanyController.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/controller/CompanyController.java deleted file mode 100644 index e192a55..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/controller/CompanyController.java +++ /dev/null @@ -1,257 +0,0 @@ -package com.bfd.mf.controller; - - -import com.bfd.mf.common.PageBean; -import com.bfd.mf.entity.DataSaveManager; -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.entity.StatInfo; -import com.bfd.mf.service.rmi.ServiceManager; -import com.bfd.mf.service.FieldNormalizService; -import com.bfd.mf.service.MetaSearchService; -import com.bfd.mf.service.StatService; -import com.bfd.mf.tools.ConnectionRmi; -import net.sf.json.JSONObject; -import org.apache.commons.lang.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletRequest; -import java.io.File; -import java.io.IOException; -import java.rmi.RemoteException; -import java.text.SimpleDateFormat; -import java.util.*; - -/** - * @author hanzhitong - * @version 1.0 - * @description com.uniocredit.controller - * @date 2018/5/15 - */ -@Controller -@RequestMapping("/web") -public class CompanyController { - private Logger logger = LoggerFactory.getLogger(CompanyController.class); - - @Autowired - private FieldNormalizService fieldNormalizService; - @Autowired - private MetaSearchService metaSearchService ; - @Autowired - private StatService statService ; - - private ServiceManager serviceManager = ConnectionRmi.getServiceManager(); - private DataSaveManager dataSaveManager = ConnectionRmi.getDataSaveManager(); - - public Map> taskInfos = new HashMap>(); - - private SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd"); - - @RequestMapping(value = { "/upload" }, method = RequestMethod.GET) - public String upload() { - return "importdb" ; - } - - /** - * 重载 - */ - @RequestMapping(value = { "/upload" }, method = RequestMethod.POST) - public String upload(HttpServletRequest request, - @RequestParam(value="myfile") MultipartFile[] files) { - List fileNames = new ArrayList(); - List errfileNames = new ArrayList(); - String uploadFile = request.getSession().getServletContext().getRealPath("/")+"upload/"; - File dir = new File(uploadFile); - if(!dir.exists()){ - dir.mkdir(); - } - for (MultipartFile file: files){ - String fileName=file.getOriginalFilename(); - System.out.println(fileName); - File serverFile = new File(uploadFile + fileName); - try { - file.transferTo(serverFile); -// excelToDB.exc_import_db(uploadFile + fileName); - if(serverFile.exists() && serverFile.isFile()) - serverFile.delete(); - fileNames.add(fileName); - } catch (IOException e) { - errfileNames.add(fileName); - logger.error(fileName+"--上传到服务器报错!!"); - e.printStackTrace(); - } catch (Exception e) { - errfileNames.add(fileName); - e.printStackTrace(); - } - } - if(errfileNames.size() > 0){ - request.setAttribute("errfileNames",errfileNames); - } - request.setAttribute("fileNames",fileNames); - return "importdb" ; - } - - - @RequestMapping(value = { "/taskInfo" }, method = RequestMethod.POST) - public String addTask(@RequestParam("kafkaSerName") String kafkaSerName, - @RequestParam("kafkaName") String kafkaName,@RequestParam("groupId") String groupId, - @RequestParam("bussinessType") String bussinessType,@RequestParam("esSerName") String esSerName, - @RequestParam("esSuffixNames") String esSuffixNames, @RequestParam("projectName") String projectName, - @RequestParam("isSemtimentApi") String isSemtimentApi) { - FieldNormaliz fieldNormaliz = new FieldNormaliz(); - fieldNormaliz.setEsSerName(Integer.valueOf(esSerName)); - fieldNormaliz.setBussinessType(Integer.valueOf(bussinessType)); - fieldNormaliz.setEsSuffixNames(esSuffixNames); - fieldNormaliz.setKafkaName(kafkaName); - fieldNormaliz.setGroupId(groupId); - fieldNormaliz.setKafkaSerName(Integer.valueOf(kafkaSerName)); - fieldNormaliz.setProjectName(projectName); - fieldNormaliz.setIsSemtimentApi(Integer.valueOf(isSemtimentApi)); - fieldNormaliz.setKafkaSuffixName("gxnewfilterloacal"); - fieldNormaliz.setKafkafastsuffixname("gxfastnewfilterloacal"); - fieldNormalizService.add(fieldNormaliz) ; - return "importdb" ; - } - - - /** - * 获取任务列表 - * @return - */ - @RequestMapping(value = { "/tasklist" }, method = RequestMethod.POST) - @ResponseBody - public String tasklist() { - List fieldNormalizs = fieldNormalizService.getFieldNormalizList() ; - Map map = new HashMap(); - map.put("fieldNormalizs", fieldNormalizs); - String result = JSONObject.fromObject(map).toString(); - return result ; - } - - - @RequestMapping(value = { "/startTask" }, method = RequestMethod.POST) - public String startTask(int id){ - FieldNormaliz fieldNormaliz = fieldNormalizService.getFieldNormalizById(id); - Map map = new HashMap(); - map.put("kafkaName", fieldNormaliz.getKafkaName()) ; - map.put("taskid", fieldNormaliz.getId()) ; - map.put("busniessType", fieldNormaliz.getBussinessType()) ; // 2=后台 1=前台 - map.put("esServerName",fieldNormaliz.getEsSerName()); // 1= 后台 2=前台 - map.put("indexName",fieldNormaliz.getEsSuffixNames()); - taskInfos.put(fieldNormaliz.getId(), map); - try { - System.out.println("任务开始 ~" + fieldNormaliz.getId()); - //serviceManager.addTaskName(fieldNormaliz); - serviceManager.addTaskName(fieldNormaliz); - if(fieldNormaliz.getIsSemtimentApi() == 1){ - String kafkaName = fieldNormaliz.getKafkaName() ; - String kafkasuffixName = fieldNormaliz.getKafkaSuffixName() ; - fieldNormaliz.setKafkaName(kafkaName+"_"+kafkasuffixName); - System.out.println(fieldNormaliz.toString()+"fieldNormaliz是000"); - dataSaveManager.addTaskName(fieldNormaliz); - } - } catch (RemoteException e) { - e.printStackTrace(); - } - fieldNormalizService.update(id, fieldNormaliz); - return "importdb"; - } - - @RequestMapping(value = { "/stopTask" }, method = RequestMethod.POST) - public String stopTask(int id){ - FieldNormaliz fieldNormaliz = fieldNormalizService.getFieldNormalizById(id); - fieldNormalizService.delete(id); - if(fieldNormaliz != null){ - String kafkaName = ""; - try{ - kafkaName = fieldNormaliz.getKafkaName() ; - }catch(Exception e){ - e.printStackTrace(); - } - - if(taskInfos.containsKey(id)){ - taskInfos.remove(id); - } - try { - if(StringUtils.isNotBlank(kafkaName)){ - int kafkaSerName= fieldNormaliz.getKafkaSerName() ; - serviceManager.stopImprotTask(kafkaSerName,kafkaName) ; - if(fieldNormaliz.getIsSemtimentApi() == 1){ - String kafkasuffixName = fieldNormaliz.getKafkaSuffixName() ; - dataSaveManager.stopImprotTask(kafkaSerName,kafkaName+"_"+kafkasuffixName); - } - } - } catch (RemoteException e) { - e.printStackTrace(); - } - } - return "importdb"; - } - - @RequestMapping(value = { "/refreshStats" }, method = RequestMethod.POST) - @ResponseBody - public String refreshStats(){ - List> statdatas= new ArrayList>(); - try{ -// if(taskInfos.size() > 0){ -// for(Map.Entry> entry : taskInfos.entrySet()){ -// Map taski = entry.getValue() ; -// int kafkaNum = serviceManager.getNowKafkaNum(taski) ; // 获取 kafka 当前条数 -// String checkDay = ddf.format(new Date()); -// String kafkaName = taski.get("kafkaName").toString(); -// String indexName = taski.get("indexName").toString() ; -// PageBean pageBean = metaSearchService.metaSearchPageList(indexName, new Date().getTime()) ; -// long quaryesToalNum= pageBean.getTotal(); -// long quaryesDiffrows = pageBean.getQuarycount(); -// StatInfo statInfo = statService.getStatInfoByCheck(checkDay, kafkaName, indexName); -// if(statInfo != null){ -// int kafkaN = statInfo.getKafkaRows() ; -// int esN = statInfo.getIndexRows() ; -// int esdiffNum = statInfo.getDiffRows() ; -// if(kafkaNum != kafkaN || esN != quaryesToalNum || quaryesDiffrows != esdiffNum ){ -// statService.update(checkDay, kafkaName, indexName, quaryesToalNum , quaryesDiffrows, kafkaNum); -// } -// }else{ -// StatInfo statInfonew = new StatInfo(); -// statInfonew.setCheckDay(checkDay); -// statInfonew.setKafkaName(kafkaName); -// statInfonew.setKafkaRows(kafkaNum); -// statInfonew.setIndexName(indexName); -// statInfonew.setIndexRows((int) quaryesToalNum); -// statInfonew.setDiffRows((int) quaryesDiffrows); -// statService.add(statInfonew); -// } -// } -// } - - List statlist = statService.getStatInfo(); - if(statlist.size() > 0){ - Map statdata ; - for(StatInfo statInfo : statlist){ - statdata = new HashMap(); - statdata.put("indexName", statInfo.getIndexName()); - statdata.put("kafkaNum", statInfo.getKafkaRows()); - statdata.put("esNum", statInfo.getIndexRows()); - statdata.put("diffesNum", statInfo.getDiffRows()); - statdata.put("checkDay", statInfo.getCheckDay()); - statdata.put("kafkaName", statInfo.getKafkaName()); - statdatas.add(statdata); - } - } - }catch(Exception e){ - e.printStackTrace(); - } - Map map = new HashMap(); - map.put("autoRefresh", statdatas); - String result = JSONObject.fromObject(map).toString(); - return result; - - } -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldInfo.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldInfo.java deleted file mode 100644 index 5d3185f..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldInfo.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.bfd.mf.entity; - -import java.util.List; - -public class FieldInfo { - - private String kafka_type ; - - private List kafkaJsonString ; - - private List kafkaJsonArray ; - - public String getKafka_type() { - return kafka_type; - } - - public void setKafka_type(String kafka_type) { - this.kafka_type = kafka_type; - } - - public List getKafkaJsonString() { - return kafkaJsonString; - } - - public void setKafkaJsonString(List kafkaJsonString) { - this.kafkaJsonString = kafkaJsonString; - } - - public List getKafkaJsonArray() { - return kafkaJsonArray; - } - - public void setKafkaJsonArray(List kafkaJsonArray) { - this.kafkaJsonArray = kafkaJsonArray; - } - - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldNormaliz.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldNormaliz.java deleted file mode 100644 index f86d364..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/FieldNormaliz.java +++ /dev/null @@ -1,271 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; -import java.util.Map; -import java.util.Set; - -public class FieldNormaliz implements Serializable{ - - /** - * - */ - private static final long serialVersionUID = 1L; - - private int id ; - - private String kafkaName ; - - private int kafkaSerName ; - - private int esSerName ; - - private String esSuffixNames ; - - private String docType ; - - private int isSemtimentApi ; - - private boolean ishlKeyword ; - - private int bussinessType ; - - private Map fieldNormalizeContentMap ; - - private Map fieldNormalizeCommentMap ; - - private Map>> fieldDataMap ; - - private Map fieldInfo ; - - private String groupId ; - - private String createTime ; - - private String finshTime ; - - private int status ; - - private String projectName ; - - private Map>> userfieldDataMap ; - - private String kafkaSuffixName ; - - public String getKafkafastsuffixname() { - return kafkafastsuffixname; - } - - public void setKafkafastsuffixname(String kafkafastsuffixname) { - this.kafkafastsuffixname = kafkafastsuffixname; - } - - private String kafkafastsuffixname ; - - - - - public String getKafkaSuffixName() { - return kafkaSuffixName; - } - - public void setKafkaSuffixName(String kafkaSuffixName) { - this.kafkaSuffixName = kafkaSuffixName; - } - - public String getKafkaName() { - return kafkaName; - } - - public void setKafkaName(String kafkaName) { - this.kafkaName = kafkaName; - } - - public int getKafkaSerName() { - return kafkaSerName; - } - - public void setKafkaSerName(int kafkaSerName) { - this.kafkaSerName = kafkaSerName; - } - - - public int getEsSerName() { - return esSerName; - } - - public void setEsSerName(int esSerName) { - this.esSerName = esSerName; - } - - public String getDocType() { - return docType; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - - public int getIsSemtimentApi() { - return isSemtimentApi; - } - - public void setIsSemtimentApi(int isSemtimentApi) { - this.isSemtimentApi = isSemtimentApi; - } - - public int getBussinessType() { - return bussinessType; - } - - public void setBussinessType(int bussinessType) { - this.bussinessType = bussinessType; - } - - public Map getFieldNormalizeContentMap() { - return fieldNormalizeContentMap; - } - - public void setFieldNormalizeContentMap(Map fieldNormalizeContentMap) { - this.fieldNormalizeContentMap = fieldNormalizeContentMap; - } - - public Map getFieldNormalizeCommentMap() { - return fieldNormalizeCommentMap; - } - - public void setFieldNormalizeCommentMap(Map fieldNormalizeCommentMap) { - this.fieldNormalizeCommentMap = fieldNormalizeCommentMap; - } - - public Map>> getFieldDataMap() { - return fieldDataMap; - } - - public Map> getFieldDataMapByType(String type){ - return fieldDataMap.get(type); - } - - public void addFieldDataMap(String type, Map fixFieldData, Integer bussinessType){ - Set keys = fixFieldData.keySet() ; - Map> fieldMaps = fieldDataMap.get(bussinessType) ; - Map fieldMap = fieldMaps.get(type) ; - for(String key : keys){ - fieldMap.put(key, key) ; - } - fieldMaps.put(type, fieldMap); - fieldDataMap.put(bussinessType, fieldMaps) ; - } - - - public void setFieldDataMap(Map>> fieldDataMap) { - this.fieldDataMap = fieldDataMap; - } - - public Map getFieldInfo() { - return fieldInfo; - } - - public void setFieldInfo(Map fieldInfo) { - this.fieldInfo = fieldInfo; - } - - public boolean isIshlKeyword() { - return ishlKeyword; - } - - public void setIshlKeyword(boolean ishlKeyword) { - this.ishlKeyword = ishlKeyword; - } - - public String getEsSuffixNames() { - return esSuffixNames; - } - - public void setEsSuffixNames(String esSuffixNames) { - this.esSuffixNames = esSuffixNames; - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getCreateTime() { - return createTime; - } - - public void setCreateTime(String createTime) { - this.createTime = createTime; - } - - public String getFinshTime() { - return finshTime; - } - - public void setFinshTime(String finshTime) { - this.finshTime = finshTime; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - - public String getProjectName() { - return projectName; - } - - public void setProjectName(String projectName) { - this.projectName = projectName; - } - - public Map>> getUserfieldDataMap() { - return userfieldDataMap; - } - - public void setUserfieldDataMap(Map>> userfieldDataMap) { - this.userfieldDataMap = userfieldDataMap; - } - - @Override - public String toString() { - return "FieldNormaliz{" + - "id=" + id + - ", kafkaName='" + kafkaName + '\'' + - ", kafkaSerName=" + kafkaSerName + - ", esSerName=" + esSerName + - ", esSuffixNames='" + esSuffixNames + '\'' + - ", docType='" + docType + '\'' + - ", isSemtimentApi=" + isSemtimentApi + - ", ishlKeyword=" + ishlKeyword + - ", bussinessType=" + bussinessType + - ", fieldNormalizeContentMap=" + fieldNormalizeContentMap + - ", fieldNormalizeCommentMap=" + fieldNormalizeCommentMap + - ", fieldDataMap=" + fieldDataMap + - ", fieldInfo=" + fieldInfo + - ", groupId='" + groupId + '\'' + - ", createTime='" + createTime + '\'' + - ", finshTime='" + finshTime + '\'' + - ", status=" + status + - ", projectName='" + projectName + '\'' + - ", userfieldDataMap=" + userfieldDataMap + - ", kafkaSuffixName='" + kafkaSuffixName + '\'' + - '}'; - } -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/Record.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/Record.java deleted file mode 100644 index dccb15c..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/Record.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.bfd.mf.entity; - -import java.util.List; -import java.util.Map; - -public class Record { - private Long counts; - private List> records; - - public Long getCounts() { - return counts; - } - public void setCounts(Long counts) { - this.counts = counts; - } - public List> getRecords() { - return records; - } - public void setRecords(List> records) { - this.records = records; - } -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/StatInfo.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/StatInfo.java deleted file mode 100644 index 0f22525..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/entity/StatInfo.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; - -public class StatInfo implements Serializable{ - - /** - * - */ - private static final long serialVersionUID = 1L; - - - private String checkDay ; - - private String kafkaName ; - - private int kafkaRows ; - - private String indexName ; - - private int indexRows ; - - private int diffRows; - - private String addTime ; - - public String getCheckDay() { - return checkDay; - } - - public void setCheckDay(String checkDay) { - this.checkDay = checkDay; - } - - public String getKafkaName() { - return kafkaName; - } - - public void setKafkaName(String kafkaName) { - this.kafkaName = kafkaName; - } - - public int getKafkaRows() { - return kafkaRows; - } - - public void setKafkaRows(int kafkaRows) { - this.kafkaRows = kafkaRows; - } - - public String getIndexName() { - return indexName; - } - - public void setIndexName(String indexName) { - this.indexName = indexName; - } - - public int getIndexRows() { - return indexRows; - } - - public void setIndexRows(int indexRows) { - this.indexRows = indexRows; - } - - public int getDiffRows() { - return diffRows; - } - - public void setDiffRows(int diffRows) { - this.diffRows = diffRows; - } - - public String getAddTime() { - return addTime; - } - - public void setAddTime(String addTime) { - this.addTime = addTime; - } - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/es/ESHandler.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/es/ESHandler.java deleted file mode 100644 index 877fa36..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/es/ESHandler.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.bfd.mf.es; - -import com.bfd.mf.common.ExternalConnCache; -import org.elasticsearch.action.search.SearchRequestBuilder; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Repository; - -import java.text.SimpleDateFormat; -import java.util.Date; - - -@Repository -public class ESHandler { - - private static final Logger logger = LoggerFactory.getLogger(ESHandler.class); - - private static final SimpleDateFormat startddf = new SimpleDateFormat("yyyy-MM-dd 00:00:00"); - - private static final SimpleDateFormat nowddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - - public long synoPageSearch(String indexName, long nowcreateTime) { - - TransportClient client = ExternalConnCache.getTransportClient(); - BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery(); - if(nowcreateTime != 0){ - String startTime = startddf.format(new Date(nowcreateTime)); - String nowTime = nowddf.format(new Date(nowcreateTime)) ; - queryBuilder.must(QueryBuilders.rangeQuery("createTimeStr").from(startTime).to(nowTime)); - }else{ - queryBuilder.must(QueryBuilders.matchAllQuery()); - } - - SearchResponse response; - try { - SearchRequestBuilder srb = client.prepareSearch(indexName) - .setTypes("docs") - .setQuery(queryBuilder); - response = srb.get(); - } catch (Exception e) { - e.printStackTrace(); - return 0 ; - } - - Long count = response.getHits().getTotalHits(); - return count ; - } - - - -// public static void main(String[] args) { -// String indexName = "overseas_content"; -//// JSONArray jsonArray = new JSONArray(); -//// jsonArray.add("{\"id\":259,\"question\":\"人工智能是指什么\",\"answer\":\"AI,人工智能它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。\",\"createdBy\":1,\"createTime\":1541757803,\"lastModifiedBy\":1,\"lastModifiedTime\":1541757803}"); -// -// //jsonArray.add("{\"id\":4440,\"question\":\"人工智能指什么\",\"answer\":\"AI,人工智能它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。\",\"createdBy\":1,\"createTime\":1541757803,\"lastModifiedBy\":1,\"lastModifiedTime\":1541757803}"); -// -// //System.out.println(jsonArray.toJSONString()); -// -// //batchInsert(indexName, type, jsonArray); -// -// //update(jsonArray, indexName, type); -// -// //String ids = "24,25"; -// //deleteByIDs(indexName, type, ids); -//// ChatPairs chatPairs = new ChatPairs(); -//// chatPairs.setAnswer("请问能帮我介绍一下AI"); -//// chatPairs.setQuestion("请问能帮我介绍一下AI"); -//// chatSearch(indexName,type, chatPairs); -// -//// Synonym synonym = new Synonym(); -//// synonym.setRoot("抓取"); -//// synoSearch(indexName,type, 1, 10, synonym); -// -// //exportIndex(indexName); -// ESHandler esh = new ESHandler(); -// long a= esh.synoPageSearch(indexName,0); //13978 -// System.out.println(a); -// } - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/FieldNormalizMapper.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/FieldNormalizMapper.java deleted file mode 100644 index 26dbb24..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/FieldNormalizMapper.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.bfd.mf.mapper; - -import com.bfd.mf.entity.FieldNormaliz; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import org.springframework.stereotype.Repository; -import java.util.List; - -@Repository -@Mapper -public interface FieldNormalizMapper { - - FieldNormaliz getFieldNormalizById(Integer id); - - public List getFieldNormalizList(); - - public int add(FieldNormaliz fieldNormaliz); - - public int update(@Param("id") Integer id, @Param("fieldNormaliz") FieldNormaliz fieldNormaliz); - - public int delete(Integer id); - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/StatMapper.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/StatMapper.java deleted file mode 100644 index 18bf370..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/mapper/StatMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.bfd.mf.mapper; - -import com.bfd.mf.entity.StatInfo; -import org.apache.ibatis.annotations.Param; -import org.springframework.stereotype.Repository; - -import java.util.List; - - -@Repository -public interface StatMapper { - - public List getStatInfo(); - - public int add(StatInfo statInfo); - - public int update(@Param("checkDay") String checkDay, @Param("kafkaName") String kafkaName, @Param("indexName") String indexName, @Param("indexRows") long indexRows, @Param("diffRows") long diffRows, @Param("kafkaRows") int kafkaRows); - - public StatInfo getStatInfoByCheck(@Param("checkDay") String checkDay, @Param("kafkaName") String kafkaName, @Param("indexName") String indexName); -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/SendTask.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/SendTask.java deleted file mode 100644 index 793c425..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/SendTask.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.bfd.mf.sendTask; - -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.util.Map; - -public interface SendTask extends Remote{ - - public void backTopic(Map dataMap) throws RemoteException; - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/impl/SendTaskImpl.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/impl/SendTaskImpl.java deleted file mode 100644 index da6167c..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/sendTask/impl/SendTaskImpl.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.bfd.mf.sendTask.impl; - - -import com.bfd.mf.sendTask.SendTask; - -import java.io.Serializable; -import java.rmi.RemoteException; -import java.util.Map; - -public class SendTaskImpl implements SendTask,Serializable,Cloneable{ - /** - * - */ - private static final long serialVersionUID = 6269469187077502624L; - - - @Override - public void backTopic(Map dataMap) throws RemoteException { - // TODO Auto-generated method stub - - } - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/FieldNormalizService.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/FieldNormalizService.java deleted file mode 100644 index b6e61cc..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/FieldNormalizService.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.bfd.mf.service; - - -import com.bfd.mf.entity.FieldNormaliz; -import org.springframework.stereotype.Service; - -import java.util.List; - -@Service -public interface FieldNormalizService { - - FieldNormaliz getFieldNormalizById(Integer id); - - public List getFieldNormalizList(); - - public int add(FieldNormaliz fieldNormaliz); - - public int update(Integer id, FieldNormaliz fieldNormaliz); - - public int delete(Integer id); - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/MetaSearchService.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/MetaSearchService.java deleted file mode 100644 index 6ea7e08..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/MetaSearchService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.bfd.mf.service; - - -import com.bfd.mf.common.PageBean; - -public interface MetaSearchService { - PageBean metaSearchPageList(String indexName, long createTime); -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/StatService.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/StatService.java deleted file mode 100644 index 8d2270a..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/StatService.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.bfd.mf.service; - - -import com.bfd.mf.entity.StatInfo; - -import java.util.List; - -public interface StatService { - public List getStatInfo(); - - public int add(StatInfo statInfo); - - public int update(String checkDay, String kafkaName, String indexName, long quaryesToalNum, long quaryesDiffrows, int kafkaNum); - - public StatInfo getStatInfoByCheck(String checkDay, String kafkaName, String indexName); - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/FieldNormalizServiceImpl.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/FieldNormalizServiceImpl.java deleted file mode 100644 index 8c1ccd9..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/FieldNormalizServiceImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.bfd.mf.service.impl; - -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.mapper.FieldNormalizMapper; -import com.bfd.mf.service.FieldNormalizService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import java.util.List; - -@Service -public class FieldNormalizServiceImpl implements FieldNormalizService { - - @Autowired - private FieldNormalizMapper fieldNormalizMapper ; - - @Override - public FieldNormaliz getFieldNormalizById(Integer id) { - // TODO Auto-generated method stub - return fieldNormalizMapper.getFieldNormalizById(id); - } - - @Override - public List getFieldNormalizList() { - // TODO Auto-generated method stub - return fieldNormalizMapper.getFieldNormalizList(); - } - - @Override - public int add(FieldNormaliz fieldNormaliz) { - // TODO Auto-generated method stub - return fieldNormalizMapper.add(fieldNormaliz); - } - - @Override - public int update(Integer id, FieldNormaliz fieldNormaliz) { - // TODO Auto-generated method stub - return fieldNormalizMapper.update(id, fieldNormaliz); - } - - @Override - public int delete(Integer id) { - // TODO Auto-generated method stub - return fieldNormalizMapper.delete(id); - } - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/MetaSearchServiceImpl.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/MetaSearchServiceImpl.java deleted file mode 100644 index d5a2970..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/MetaSearchServiceImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.bfd.mf.service.impl; - - -import com.bfd.mf.common.PageBean; -import com.bfd.mf.es.ESHandler; -import com.bfd.mf.service.MetaSearchService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - - -@Service -public class MetaSearchServiceImpl implements MetaSearchService { - - @Autowired - private ESHandler esHandler; - - @Override - public PageBean metaSearchPageList(String indexName, long createTime) { - // TODO Auto-generated method stub - try { - long quarycommentCount = esHandler.synoPageSearch(indexName+"_comment",createTime); - long quarycontentCount = esHandler.synoPageSearch(indexName+"_content",createTime); - long totalcommentCount = esHandler.synoPageSearch(indexName+"_comment",0); - long totalcontentCount = esHandler.synoPageSearch(indexName+"_content",0); - PageBean pageBean = new PageBean(); - pageBean.setTotal(totalcommentCount + totalcontentCount); - pageBean.setQuarycount(quarycommentCount + quarycontentCount); - return pageBean; - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/StatServiceImpl.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/StatServiceImpl.java deleted file mode 100644 index d413c74..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/service/impl/StatServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.bfd.mf.service.impl; - -import com.bfd.mf.entity.StatInfo; -import com.bfd.mf.mapper.StatMapper; -import com.bfd.mf.service.StatService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -@Service -public class StatServiceImpl implements StatService { - - @Autowired - private StatMapper statMapper ; - - @Override - public List getStatInfo() { - // TODO Auto-generated method stub - return statMapper.getStatInfo(); - } - - @Override - public int add(StatInfo statInfo) { - // TODO Auto-generated method stub - return statMapper.add(statInfo); - } - - @Override - public int update(String checkDay,String kafkaName,String indexName,long quaryesToalNum ,long quaryesDiffrows,int kafkaNum) { - // TODO Auto-generated method stub - return statMapper.update(checkDay,kafkaName,indexName, quaryesToalNum, quaryesDiffrows, kafkaNum); - } - - @Override - public StatInfo getStatInfoByCheck(String checkDay, String kafkaName, String indexName) { - // TODO Auto-generated method stub - return statMapper.getStatInfoByCheck(checkDay, kafkaName, indexName); - } - - -} diff --git a/cl_stream_mybatis/src/main/java/com/bfd/mf/tools/ConnectionRmi.java b/cl_stream_mybatis/src/main/java/com/bfd/mf/tools/ConnectionRmi.java deleted file mode 100644 index f920323..0000000 --- a/cl_stream_mybatis/src/main/java/com/bfd/mf/tools/ConnectionRmi.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.bfd.mf.tools; - -import com.bfd.mf.entity.DataSaveManager; -import com.bfd.mf.service.rmi.ServiceManager; - -import java.rmi.NotBoundException; -import java.rmi.RemoteException; -import java.rmi.registry.LocateRegistry; -import java.rmi.registry.Registry; - -public class ConnectionRmi { - - private static ServiceManager serviceManager ; - - private static DataSaveManager dataSaveManager ; - - private ConnectionRmi() {} - - private static ServiceManager initServiceManager() { - Registry registry; - try { - registry = LocateRegistry.getRegistry("127.0.0.1", 2099); - serviceManager = (ServiceManager) registry.lookup("serviceManager"); - } catch (RemoteException e) { - e.printStackTrace(); - } catch (NotBoundException e) { - e.printStackTrace(); - } - return serviceManager; - } - - private static DataSaveManager initDataSaveManager() { - Registry registry; - try { - registry = LocateRegistry.getRegistry("127.0.0.1", 3099); - dataSaveManager = (DataSaveManager) registry.lookup("dataSaveManager"); - } catch (RemoteException e) { - e.printStackTrace(); - } catch (NotBoundException e) { - e.printStackTrace(); - } - return dataSaveManager; - } - - public static ServiceManager getServiceManager(){ - return initServiceManager(); - } - - public static DataSaveManager getDataSaveManager(){ - return initDataSaveManager(); - } - -} diff --git a/cl_stream_mybatis/src/main/main1.iml b/cl_stream_mybatis/src/main/main1.iml deleted file mode 100644 index 1bc683a..0000000 --- a/cl_stream_mybatis/src/main/main1.iml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/application.properties b/cl_stream_mybatis/src/main/resources/application.properties deleted file mode 100644 index c32e8d5..0000000 --- a/cl_stream_mybatis/src/main/resources/application.properties +++ /dev/null @@ -1,23 +0,0 @@ - #mysql -spring.datasource.url=jdbc:mysql://172.18.1.152/field_normaliz?useUnicode=true&characterEncoding=utf-8 -spring.datasource.username=root -spring.datasource.password=Bfd123!@# -spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -#spring.datasource.url=jdbc:mysql://172.26.11.113:3306/intelligent_crawl?useUnicode=true&characterEncoding=utf-8 -#spring.datasource.username=root -#spring.datasource.password=bfd123 -#spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -#spring.datasource.url=jdbc:mysql://192.168.94.24:6446/intelligent_schema?useUnicode=true&characterEncoding=utf-8 -#spring.datasource.username=root -#spring.datasource.password=baifendian -#spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -spring.mvc.view.suffix=.jsp -spring.mvc.view.prefix=/WEB-INF/ -spring.mvc.static-path-pattern=/static/** - - -#mybatis -mybatis.mapperLocations=classpath:com/bfd/mf/mapper/*.xml \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/fieldNormaliz.xml b/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/fieldNormaliz.xml deleted file mode 100644 index 875aff9..0000000 --- a/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/fieldNormaliz.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - id, kafka_server, es_server, bussiness_type,es_index_name,kafka_topic,groupid,project_name,is_semtiment_api,kafka_suffix_name - - - - - - - - INSERT INTO - mf_kafka_info - (kafka_server,kafka_topic,groupid,es_server,bussiness_type,es_index_name,create_time,project_name,is_semtiment_api,kafka_suffix_name) - VALUES - (#{kafkaSerName}, #{kafkaName}, #{groupId}, #{esSerName}, #{bussinessType}, #{esSuffixNames}, now(), #{projectName}, #{isSemtimentApi}, #{kafkaSuffixName}) - - - - UPDATE - mf_kafka_info - SET - status = 1 - WHERE - id = #{id} - - - - DELETE FROM - mf_kafka_info - WHERE - id = #{id} - - \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/statInfo.xml b/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/statInfo.xml deleted file mode 100644 index 13bdb44..0000000 --- a/cl_stream_mybatis/src/main/resources/com/bfd/mf/mapper/statInfo.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - check_day, kafka_name, kafka_rows, index_name, index_rows, diff_rows, add_time - - - - - - INSERT INTO - mf_check_rows_list - (check_day,kafka_name,kafka_rows,index_name,index_rows,diff_rows,add_time) - VALUES - (#{checkDay}, #{kafkaName}, #{kafkaRows}, #{indexName}, #{indexRows}, #{diffRows}, now()) - - - - UPDATE - mf_check_rows_list - SET - kafka_rows = #{kafkaRows}, index_rows = #{indexRows} , diff_rows = #{diffRows} - WHERE - check_day = #{checkDay} and kafka_name = #{kafkaName} and index_name = #{indexName} - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/com/bfd/mf/spring/applicationContext.xml b/cl_stream_mybatis/src/main/resources/com/bfd/mf/spring/applicationContext.xml deleted file mode 100644 index 1992f07..0000000 --- a/cl_stream_mybatis/src/main/resources/com/bfd/mf/spring/applicationContext.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - classpath:/datasources.properties - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/datasources.properties b/cl_stream_mybatis/src/main/resources/datasources.properties deleted file mode 100644 index 8ef3802..0000000 --- a/cl_stream_mybatis/src/main/resources/datasources.properties +++ /dev/null @@ -1,4 +0,0 @@ -sms_username=0c44a92f900c5 -sms_password=100817121800010094 -sms_url=http://www.xcapi.net:18018/xcapi/smsApiSend.do -# diff --git a/cl_stream_mybatis/src/main/resources/log4j.properties b/cl_stream_mybatis/src/main/resources/log4j.properties deleted file mode 100644 index 5d6e92f..0000000 --- a/cl_stream_mybatis/src/main/resources/log4j.properties +++ /dev/null @@ -1,18 +0,0 @@ -log4j.rootLogger=DEBUG, error - -###### error appender definition ####### -log4j.appender.error=org.apache.log4j.DailyRollingFileAppender -log4j.appender.error.File=logs/sdkclient_error.log -log4j.appender.error.Append=true -log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH -log4j.appender.error.layout=org.apache.log4j.PatternLayout -log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] %m%n - -#error only -log4j.appender.error.filter.F1=org.apache.log4j.varia.LevelRangeFilter -log4j.appender.error.filter.F1.LevelMin=ERROR -log4j.appender.error.filter.F1.LevelMax=ERROR -# -log4j.appender.error.filter.F2=org.apache.log4j.varia.LevelMatchFilter -log4j.appender.error.filter.F2.levelToMatch=WARN -log4j.appender.error.filter.F2.acceptOnMatch=false \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/AjaxObject.js b/cl_stream_mybatis/src/main/resources/static/scripts/AjaxObject.js deleted file mode 100644 index d717d7a..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/AjaxObject.js +++ /dev/null @@ -1,124 +0,0 @@ -/*---------------------------- Ajax 请求对象 ----------------------------*/ - -/************************************************** - -- 属性: - url: 请求地址; - method: 请求方法(GET 或者 POST),默认为 GET; - flag: 异步或者同步请求(true 或者 false),默认为 true; - info: 请求参数,默认为 null,注:只有当请求方法为 POST 时,才被使用; - //isEval: 是否调用 eval() 函数(true 或者 false),默认为为 false; - //callback: 是否设置回调函数(true或者false),默认为 true; - result: Ajax 请求的响应结果 - - -- 方法: - executeRequest: 执行 Ajax 请求的方法; - onReady: 绑定函数到 req.onreadystatechange 事件; - dealResult: 只提供了函数名称,用来设置用户自己的函数。注:在用户自己的函数中,用来处理 Ajax 请求的返回结果。 -**************************************************/ -function Ajax(url, method, flag, info) { - this.url = url; - this.method = method || "GET"; - this.flag = (flag == false) ? false : (flag || true); - this.info = info || null; - //this.isEval = false; - //this.callback = true; - this.result = null; - var req = null; // req: XMLHttpRequest 对象; - - // 实例化 req 对象 - (function() { - if (window.XMLHttpRequest) { - req = new XMLHttpRequest(); - if (req.overrideMimeType) { - //req.overrideMimeType("text/xml"); - } - } else if (window.ActiveXObject) { - try { - req = new ActiveXObject("Msxml2.XMLHTTP"); - } catch (e) { - try { - req = new ActiveXObject("Microsoft.XMLHTTP"); - } catch (e) { - alert("该浏览器不支持 Ajax !"); - req = null; - } - } - - /* Msxml2.XMLHTTP.5.0, 4.0, 3.0 都可以,2.0 和 1.0 不可以 - for (var i = 5; i; i--) { - try { - alert(i); - if (i != 2) { - req = new ActiveXObject("Msxml2.XMLHTTP." + i + ".0"); - } - - } catch (e) { - alert(e); - continue; - } - }*/ - } - }()); - this.executeRequest = function () { - if (!req || !this.url) { - alert("req 为空或者 url 为空!"); - return; - } - - if (this.url.indexOf("_id_=") != -1) { - // 不改变 - } else { - // 保证每次请求的 URL 都不一样,防止缓存 - var rand = "_id_=" + Math.random(); - if (this.url.indexOf("?") != -1) { - this.url += "&" + rand; - } else { - this.url += "?" + rand; - } - } - - /*// 判断,是否设置回调函数 - if (this.callback) { - this.onReady(req); - }*/ - // 设置回调函数 - this.onReady(req, this); - // 初始化 req 对象 - req.open(this.method, this.url, this.flag); - - // 判断,是否为 POST 请求 - if ((this.method.toUpperCase() == "POST") && this.info) { - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); - } - // 向服务器端发送请求 - req.send(this.info); - - /*// 判断,是否执行 eval() 函数 - if (this.isEval) { - eval(req.responseText); - }*/ - }; - this.onReady = function (req, ajax) { - req.onreadystatechange = function () { - if (req.readyState == 4) { - var result = req.responseText; - if (req.status == 200) { - ajax.result = result; - if (ajax.dealResult) { - ajax.dealResult(result); - } else { - var message = "请为 Ajax对象的 dealResult 设置回调函数!"; - message += "\r\n例如:Ajax对象.dealResult=function(result) { Your Code }"; - message += "\r\n其中,result 参数为服务器端返回的响应数据。"; - //alert(message); - } - } else { - //alert("响应错误!"); - - //alert(result); - } - } - }; - }; - this.dealResult; // = function(result) { }; -} diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery.TableExcel.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery.TableExcel.js deleted file mode 100644 index 5c42ee3..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery.TableExcel.js +++ /dev/null @@ -1,203 +0,0 @@ -/* -生成EXCEL的数据格式定义: -{ - name: '', - widths: [xxx,…,xxx], - clazz" '', - style: '', - data: [ - { - height: xxx, - clazz" '', - style: '', - cell: [ - { - range: 'xxx.xxx', - text: '', - clazz: '', - style: '' -},…{ -… -} -] - },…,{ - } -], …,[ -… -] -} -*/ -(function($) { - $.fn.exportTableData = function(options) { - var opts = $.extend({}, $.fn.exportTableData.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var result = { - widths: [], - data: [] - }; - - readCSS(result, table); - - var cols = table.find('col'); - cols.each(function(i) { - result.widths[i] = $(this).width(); - }) - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - result.data[row] = { - height: tr.height(), - cell: [] - }; - - readCSS(result.data[row], tr); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - var val = td.html(); - if (opts.callback) - val = opts.callback(tr, td, row, col, val); - - result.data[row].cell[col] = { - text: val - } - - readRange(result.data[row].cell[col], td); - readCSS(result.data[row].cell[col], td); - }) - }) - - return result; - - function readRange(data, el) { - var rowSpan = el.attr('rowSpan'); - var colSpan = el.attr('colSpan'); - - rowSpan = rowSpan ? parseInt(rowSpan) : 1; - colSpan = colSpan ? parseInt(colSpan) : 1; - - if (rowSpan != 1 || colSpan != 1) - data.range = rowSpan + '.' + colSpan; - } - - function readCSS(data, el) { - var clazz = el.attr('class'); - if (clazz) - data.clazz = clazz; - - var style = el.attr('style'); - if (style) - data.style = style; - } - }; - - $.fn.exportTableData.defaults = { - callback: function(tr, td, row, col, val) { - return val; - } - }; - - $.fn.parseImportTableConfig = function(options) { - var opts = $.extend({}, $.fn.parseImportTableConfig.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var result = ''; - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - if (opts.callback) { - if (opts.callback({ - tr: tr, - td: td, - row: row, - col: col - }) == false) - return; - } - - result += row + '.' + col + ' '; - }) - }) - - return result; - }; - - $.fn.parseImportTableConfig.defaults = { - callback: function(params) { - return true; - } - }; - - $.fn.importTableData = function(data, options) { - var opts = $.extend({}, $.fn.importTableData.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var importTds = []; - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - var key = row + '.' + col; - if (typeof(data[key]) == 'undefined') - return; - - var params = { - tr: tr, - td: td, - row: row, - col: col, - val: data[key] - }; - - if (opts.callback) { - if (opts.callback(params) == false) - return; - } - - var val = params.val; - var orgVal = td.html(); - if (val != null && val != orgVal) { - td.html(val); - - importTds[importTds.length] = td; - } - }) - }) - - if (importTds.length > 0 && opts.finish) - opts.finish(importTds); - }; - - $.fn.importTableData.defaults = { - callback: function(params) { - return true; - }, - finish: function(tds) { - } - }; -})(jQuery); \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/jquery-1.3.2.min.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/jquery-1.3.2.min.js deleted file mode 100644 index b1ae21d..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("",""]||!O.indexOf("",""]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!O.indexOf("",""]||(!O.indexOf("",""]||!O.indexOf("",""]||!o.support.htmlSerialize&&[1,"div

","
"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return UT[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="

";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="
";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("
").append(M.responseText.replace(//g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='
';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})(); \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/plugins/ajaxfileupload.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/plugins/ajaxfileupload.js deleted file mode 100644 index 762aaf1..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/plugins/ajaxfileupload.js +++ /dev/null @@ -1,209 +0,0 @@ - -jQuery.extend({ - - - createUploadIframe: function(id, uri) - { - //create frame - var frameId = 'jUploadFrame' + id; - - if(window.ActiveXObject) { - var io = document.createElement('' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '
'; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '' + monthNames[drawMonth] + ' '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += ''; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '' + drawYear + ''; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += ''; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '
'; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); -/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.progressbar", { - - _init: function() { - - this.element - .addClass("ui-progressbar" - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all") - .attr({ - role: "progressbar", - "aria-valuemin": this._valueMin(), - "aria-valuemax": this._valueMax(), - "aria-valuenow": this._value() - }); - - this.valueDiv = $('
').appendTo(this.element); - - 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") - .removeData("progressbar") - .unbind(".progressbar"); - - this.valueDiv.remove(); - - $.widget.prototype.destroy.apply(this, arguments); - - }, - - value: function(newValue) { - arguments.length && this._setData("value", newValue); - return this._value(); - }, - - _setData: function(key, value) { - - switch (key) { - case 'value': - this.options.value = value; - this._refreshValue(); - this._trigger('change', null, {}); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _valueMin: function() { - var valueMin = 0; - return valueMin; - }, - - _valueMax: function() { - var valueMax = 100; - return valueMax; - }, - - _refreshValue: function() { - var value = this.value(); - this.valueDiv[value == this._valueMax() ? 'addClass' : 'removeClass']("ui-corner-right"); - this.valueDiv.width(value + '%'); - this.element.attr("aria-valuenow", value); - } - -}); - -$.extend($.ui.progressbar, { - version: "1.7", - defaults: { - value: 0 - } -}); - -})(jQuery); -/* - * jQuery UI Effects 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ -;jQuery.effects || (function($) { - -$.effects = { - version: "1.7", - - // Saves a set of properties in a data storage - save: function(element, set) { - for(var i=0; i < set.length; i++) { - if(set[i] !== null) element.data("ec.storage."+set[i], element[0].style[set[i]]); - } - }, - - // Restores a set of previously saved properties from a data storage - restore: function(element, set) { - for(var i=0; i < set.length; i++) { - if(set[i] !== null) element.css(set[i], element.data("ec.storage."+set[i])); - } - }, - - setMode: function(el, mode) { - if (mode == 'toggle') mode = el.is(':hidden') ? 'show' : 'hide'; // Set for toggle - return mode; - }, - - getBaseline: function(origin, original) { // Translates a [top,left] array into a baseline value - // this should be a little more flexible in the future to handle a string & hash - var y, x; - switch (origin[0]) { - case 'top': y = 0; break; - case 'middle': y = 0.5; break; - case 'bottom': y = 1; break; - default: y = origin[0] / original.height; - }; - switch (origin[1]) { - case 'left': x = 0; break; - case 'center': x = 0.5; break; - case 'right': x = 1; break; - default: x = origin[1] / original.width; - }; - return {x: x, y: y}; - }, - - // Wraps the element around a wrapper that copies position properties - createWrapper: function(element) { - - //if the element is already wrapped, return it - if (element.parent().is('.ui-effects-wrapper')) - return element.parent(); - - //Cache width,height and float properties of the element, and create a wrapper around it - var props = { width: element.outerWidth(true), height: element.outerHeight(true), 'float': element.css('float') }; - element.wrap('
'); - var wrapper = element.parent(); - - //Transfer the positioning of the element to the wrapper - if (element.css('position') == 'static') { - wrapper.css({ position: 'relative' }); - element.css({ position: 'relative'} ); - } else { - var top = element.css('top'); if(isNaN(parseInt(top,10))) top = 'auto'; - var left = element.css('left'); if(isNaN(parseInt(left,10))) left = 'auto'; - wrapper.css({ position: element.css('position'), top: top, left: left, zIndex: element.css('z-index') }).show(); - element.css({position: 'relative', top: 0, left: 0 }); - } - - wrapper.css(props); - return wrapper; - }, - - removeWrapper: function(element) { - if (element.parent().is('.ui-effects-wrapper')) - return element.parent().replaceWith(element); - return element; - }, - - setTransition: function(element, list, factor, value) { - value = value || {}; - $.each(list, function(i, x){ - unit = element.cssUnit(x); - if (unit[0] > 0) value[x] = unit[0] * factor + unit[1]; - }); - return value; - }, - - //Base function to animate from one class to another in a seamless transition - animateClass: function(value, duration, easing, callback) { - - var cb = (typeof easing == "function" ? easing : (callback ? callback : null)); - var ea = (typeof easing == "string" ? easing : null); - - return this.each(function() { - - var offset = {}; var that = $(this); var oldStyleAttr = that.attr("style") || ''; - if(typeof oldStyleAttr == 'object') oldStyleAttr = oldStyleAttr["cssText"]; /* Stupidly in IE, style is a object.. */ - if(value.toggle) { that.hasClass(value.toggle) ? value.remove = value.toggle : value.add = value.toggle; } - - //Let's get a style offset - var oldStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle)); - if(value.add) that.addClass(value.add); if(value.remove) that.removeClass(value.remove); - var newStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle)); - if(value.add) that.removeClass(value.add); if(value.remove) that.addClass(value.remove); - - // The main function to form the object for animation - for(var n in newStyle) { - if( typeof newStyle[n] != "function" && newStyle[n] /* No functions and null properties */ - && n.indexOf("Moz") == -1 && n.indexOf("length") == -1 /* No mozilla spezific render properties. */ - && newStyle[n] != oldStyle[n] /* Only values that have changed are used for the animation */ - && (n.match(/color/i) || (!n.match(/color/i) && !isNaN(parseInt(newStyle[n],10)))) /* Only things that can be parsed to integers or colors */ - && (oldStyle.position != "static" || (oldStyle.position == "static" && !n.match(/left|top|bottom|right/))) /* No need for positions when dealing with static positions */ - ) offset[n] = newStyle[n]; - } - - that.animate(offset, duration, ea, function() { // Animate the newly constructed offset object - // Change style attribute back to original. For stupid IE, we need to clear the damn object. - if(typeof $(this).attr("style") == 'object') { $(this).attr("style")["cssText"] = ""; $(this).attr("style")["cssText"] = oldStyleAttr; } else $(this).attr("style", oldStyleAttr); - if(value.add) $(this).addClass(value.add); if(value.remove) $(this).removeClass(value.remove); - if(cb) cb.apply(this, arguments); - }); - - }); - } -}; - - -function _normalizeArguments(a, m) { - - var o = a[1] && a[1].constructor == Object ? a[1] : {}; if(m) o.mode = m; - var speed = a[1] && a[1].constructor != Object ? a[1] : (o.duration ? o.duration : a[2]); //either comes from options.duration or the secon/third argument - speed = $.fx.off ? 0 : typeof speed === "number" ? speed : $.fx.speeds[speed] || $.fx.speeds._default; - var callback = o.callback || ( $.isFunction(a[1]) && a[1] ) || ( $.isFunction(a[2]) && a[2] ) || ( $.isFunction(a[3]) && a[3] ); - - return [a[0], o, speed, callback]; - -} - -//Extend the methods of jQuery -$.fn.extend({ - - //Save old methods - _show: $.fn.show, - _hide: $.fn.hide, - __toggle: $.fn.toggle, - _addClass: $.fn.addClass, - _removeClass: $.fn.removeClass, - _toggleClass: $.fn.toggleClass, - - // New effect methods - effect: function(fx, options, speed, callback) { - return $.effects[fx] ? $.effects[fx].call(this, {method: fx, options: options || {}, duration: speed, callback: callback }) : null; - }, - - show: function() { - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0]))) - return this._show.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'show')); - } - }, - - hide: function() { - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0]))) - return this._hide.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'hide')); - } - }, - - toggle: function(){ - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0])) || (arguments[0].constructor == Function)) - return this.__toggle.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'toggle')); - } - }, - - addClass: function(classNames, speed, easing, callback) { - return speed ? $.effects.animateClass.apply(this, [{ add: classNames },speed,easing,callback]) : this._addClass(classNames); - }, - removeClass: function(classNames,speed,easing,callback) { - return speed ? $.effects.animateClass.apply(this, [{ remove: classNames },speed,easing,callback]) : this._removeClass(classNames); - }, - toggleClass: function(classNames,speed,easing,callback) { - return ( (typeof speed !== "boolean") && speed ) ? $.effects.animateClass.apply(this, [{ toggle: classNames },speed,easing,callback]) : this._toggleClass(classNames, speed); - }, - morph: function(remove,add,speed,easing,callback) { - return $.effects.animateClass.apply(this, [{ add: add, remove: remove },speed,easing,callback]); - }, - switchClass: function() { - return this.morph.apply(this, arguments); - }, - - // helper functions - cssUnit: function(key) { - var style = this.css(key), val = []; - $.each( ['em','px','%','pt'], function(i, unit){ - if(style.indexOf(unit) > 0) - val = [parseFloat(style), unit]; - }); - return val; - } -}); - -/* - * jQuery Color Animations - * Copyright 2007 John Resig - * Released under the MIT and GPL licenses. - */ - -// We override the animation for all of these color styles -$.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){ - $.fx.step[attr] = function(fx) { - if ( fx.state == 0 ) { - fx.start = getColor( fx.elem, attr ); - fx.end = getRGB( fx.end ); - } - - fx.elem.style[attr] = "rgb(" + [ - Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0],10), 255), 0), - Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1],10), 255), 0), - Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2],10), 255), 0) - ].join(",") + ")"; - }; -}); - -// Color Conversion functions from highlightFade -// By Blair Mitchelmore -// http://jquery.offput.ca/highlightFade/ - -// Parse strings looking for color tuples [255,255,255] -function getRGB(color) { - var result; - - // Check if we're already dealing with an array of colors - if ( color && color.constructor == Array && color.length == 3 ) - return color; - - // Look for rgb(num,num,num) - if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)) - return [parseInt(result[1],10), parseInt(result[2],10), parseInt(result[3],10)]; - - // Look for rgb(num%,num%,num%) - if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)) - return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55]; - - // Look for #a0b1c2 - if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)) - return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)]; - - // Look for #fff - if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)) - return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)]; - - // Look for rgba(0, 0, 0, 0) == transparent in Safari 3 - if (result = /rgba\(0, 0, 0, 0\)/.exec(color)) - return colors['transparent']; - - // Otherwise, we're most likely dealing with a named color - return colors[$.trim(color).toLowerCase()]; -} - -function getColor(elem, attr) { - var color; - - do { - color = $.curCSS(elem, attr); - - // Keep going until we find an element that has color, or we hit the body - if ( color != '' && color != 'transparent' || $.nodeName(elem, "body") ) - break; - - attr = "backgroundColor"; - } while ( elem = elem.parentNode ); - - return getRGB(color); -}; - -// Some named colors to work with -// From Interface by Stefan Petre -// http://interface.eyecon.ro/ - -var colors = { - 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] -}; - -/* - * 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 -$.easing.jswing = $.easing.swing; - -$.extend($.easing, -{ - def: 'easeOutQuad', - swing: function (x, t, b, c, d) { - //alert($.easing.default); - return $.easing[$.easing.def](x, t, b, c, d); - }, - easeInQuad: function (x, t, b, c, d) { - return c*(t/=d)*t + b; - }, - easeOutQuad: function (x, t, b, c, d) { - return -c *(t/=d)*(t-2) + b; - }, - easeInOutQuad: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t + b; - return -c/2 * ((--t)*(t-2) - 1) + b; - }, - easeInCubic: function (x, t, b, c, d) { - return c*(t/=d)*t*t + b; - }, - easeOutCubic: function (x, t, b, c, d) { - return c*((t=t/d-1)*t*t + 1) + b; - }, - easeInOutCubic: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t + b; - return c/2*((t-=2)*t*t + 2) + b; - }, - easeInQuart: function (x, t, b, c, d) { - return c*(t/=d)*t*t*t + b; - }, - easeOutQuart: function (x, t, b, c, d) { - return -c * ((t=t/d-1)*t*t*t - 1) + b; - }, - easeInOutQuart: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t*t + b; - return -c/2 * ((t-=2)*t*t*t - 2) + b; - }, - easeInQuint: function (x, t, b, c, d) { - return c*(t/=d)*t*t*t*t + b; - }, - easeOutQuint: function (x, t, b, c, d) { - return c*((t=t/d-1)*t*t*t*t + 1) + b; - }, - easeInOutQuint: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b; - return c/2*((t-=2)*t*t*t*t + 2) + b; - }, - easeInSine: function (x, t, b, c, d) { - return -c * Math.cos(t/d * (Math.PI/2)) + c + b; - }, - easeOutSine: function (x, t, b, c, d) { - return c * Math.sin(t/d * (Math.PI/2)) + b; - }, - easeInOutSine: function (x, t, b, c, d) { - return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; - }, - easeInExpo: function (x, t, b, c, d) { - return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b; - }, - easeOutExpo: function (x, t, b, c, d) { - return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b; - }, - easeInOutExpo: function (x, t, b, c, d) { - if (t==0) return b; - if (t==d) return b+c; - if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b; - return c/2 * (-Math.pow(2, -10 * --t) + 2) + b; - }, - easeInCirc: function (x, t, b, c, d) { - return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b; - }, - easeOutCirc: function (x, t, b, c, d) { - return c * Math.sqrt(1 - (t=t/d-1)*t) + b; - }, - easeInOutCirc: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; - return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; - }, - easeInElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3; - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; - }, - easeOutElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3; - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b; - }, - easeInOutElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5); - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; - return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b; - }, - easeInBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - return c*(t/=d)*t*((s+1)*t - s) + b; - }, - easeOutBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; - }, - easeInOutBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; - return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; - }, - easeInBounce: function (x, t, b, c, d) { - return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b; - }, - easeOutBounce: function (x, t, b, c, d) { - if ((t/=d) < (1/2.75)) { - return c*(7.5625*t*t) + b; - } else if (t < (2/2.75)) { - return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; - } else if (t < (2.5/2.75)) { - return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; - } else { - return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; - } - }, - easeInOutBounce: function (x, t, b, c, d) { - if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b; - return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b; - } -}); - -/* - * - * TERMS OF USE - EASING EQUATIONS - * - * Open source under the BSD License. - * - * Copyright 2001 Robert Penner - * 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. - * - */ - -})(jQuery); -/* - * jQuery UI Effects Blind 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Blind - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.blind = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'vertical'; // Default direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var ref = (direction == 'vertical') ? 'height' : 'width'; - var distance = (direction == 'vertical') ? wrapper.height() : wrapper.width(); - if(mode == 'show') wrapper.css(ref, 0); // Shift - - // Animation - var animation = {}; - animation[ref] = mode == 'show' ? distance : 0; - - // Animate - wrapper.animate(animation, o.duration, o.options.easing, function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Bounce 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Bounce - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.bounce = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var direction = o.options.direction || 'up'; // Default direction - var distance = o.options.distance || 20; // Default distance - var times = o.options.times || 5; // Default # of times - var speed = o.duration || 250; // Default speed per bounce - if (/show|hide/.test(mode)) props.push('opacity'); // Avoid touching opacity to prevent clearType and PNG issues in IE - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 3 : el.outerWidth({margin:true}) / 3); - if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift - if (mode == 'hide') distance = distance / (times * 2); - if (mode != 'hide') times--; - - // Animate - if (mode == 'show') { // Show Bounce - var animation = {opacity: 1}; - animation[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation, speed / 2, o.options.easing); - distance = distance / 2; - times--; - }; - for (var i = 0; i < times; i++) { // Bounces - var animation1 = {}, animation2 = {}; - animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing); - distance = (mode == 'hide') ? distance * 2 : distance / 2; - }; - if (mode == 'hide') { // Last Bounce - var animation = {opacity: 0}; - animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - el.animate(animation, speed / 2, o.options.easing, function(){ - el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - } else { - var animation1 = {}, animation2 = {}; - animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing, function(){ - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - }; - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Clip 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Clip - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.clip = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','height','width']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'vertical'; // Default direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var animate = el[0].tagName == 'IMG' ? wrapper : el; - var ref = { - size: (direction == 'vertical') ? 'height' : 'width', - position: (direction == 'vertical') ? 'top' : 'left' - }; - var distance = (direction == 'vertical') ? animate.height() : animate.width(); - if(mode == 'show') { animate.css(ref.size, 0); animate.css(ref.position, distance / 2); } // Shift - - // Animation - var animation = {}; - animation[ref.size] = mode == 'show' ? distance : 0; - animation[ref.position] = mode == 'show' ? 0 : distance / 2; - - // Animate - animate.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Drop 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Drop - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.drop = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','opacity']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'left'; // Default Direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2); - if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift - - // Animation - var animation = {opacity: mode == 'show' ? 1 : 0}; - animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Explode 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Explode - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.explode = function(o) { - - return this.queue(function() { - - var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3; - var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3; - - o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode; - var el = $(this).show().css('visibility', 'hidden'); - var offset = el.offset(); - - //Substract the margins - not fixing the problem yet. - offset.top -= parseInt(el.css("marginTop"),10) || 0; - offset.left -= parseInt(el.css("marginLeft"),10) || 0; - - var width = el.outerWidth(true); - var height = el.outerHeight(true); - - for(var i=0;i
') - .css({ - position: 'absolute', - visibility: 'visible', - left: -j*(width/cells), - top: -i*(height/rows) - }) - .parent() - .addClass('ui-effects-explode') - .css({ - position: 'absolute', - overflow: 'hidden', - width: width/cells, - height: height/rows, - left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0), - top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0), - opacity: o.options.mode == 'show' ? 0 : 1 - }).animate({ - left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)), - top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)), - opacity: o.options.mode == 'show' ? 1 : 0 - }, o.duration || 500); - } - } - - // Set a timeout, to call the callback approx. when the other animations have finished - setTimeout(function() { - - o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide(); - if(o.callback) o.callback.apply(el[0]); // Callback - el.dequeue(); - - $('div.ui-effects-explode').remove(); - - }, o.duration || 500); - - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Fold 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Fold - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.fold = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var size = o.options.size || 15; // Default fold size - var horizFirst = !(!o.options.horizFirst); // Ensure a boolean value - var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2; - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var widthFirst = ((mode == 'show') != horizFirst); - var ref = widthFirst ? ['width', 'height'] : ['height', 'width']; - var distance = widthFirst ? [wrapper.width(), wrapper.height()] : [wrapper.height(), wrapper.width()]; - var percent = /([0-9]+)%/.exec(size); - if(percent) size = parseInt(percent[1],10) / 100 * distance[mode == 'hide' ? 0 : 1]; - if(mode == 'show') wrapper.css(horizFirst ? {height: 0, width: size} : {height: size, width: 0}); // Shift - - // Animation - var animation1 = {}, animation2 = {}; - animation1[ref[0]] = mode == 'show' ? distance[0] : size; - animation2[ref[1]] = mode == 'show' ? distance[1] : 0; - - // Animate - wrapper.animate(animation1, duration, o.options.easing) - .animate(animation2, duration, o.options.easing, function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Highlight 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Highlight - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.highlight = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['backgroundImage','backgroundColor','opacity']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var color = o.options.color || "#ffff99"; // Default highlight color - var oldColor = el.css("backgroundColor"); - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - el.css({backgroundImage: 'none', backgroundColor: color}); // Shift - - // Animation - var animation = {backgroundColor: oldColor }; - if (mode == "hide") animation['opacity'] = 0; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == "hide") el.hide(); - $.effects.restore(el, props); - if (mode == "show" && $.browser.msie) this.style.removeAttribute('filter'); - if(o.callback) o.callback.apply(this, arguments); - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Pulsate 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Pulsate - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.pulsate = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var times = o.options.times || 5; // Default # of times - var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2; - - // Adjust - if (mode == 'hide') times--; - if (el.is(':hidden')) { // Show fadeIn - el.css('opacity', 0); - el.show(); // Show - el.animate({opacity: 1}, duration, o.options.easing); - times = times-2; - } - - // Animate - for (var i = 0; i < times; i++) { // Pulsate - el.animate({opacity: 0}, duration, o.options.easing).animate({opacity: 1}, duration, o.options.easing); - }; - if (mode == 'hide') { // Last Pulse - el.animate({opacity: 0}, duration, o.options.easing, function(){ - el.hide(); // Hide - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - } else { - el.animate({opacity: 0}, duration, o.options.easing).animate({opacity: 1}, duration, o.options.easing, function(){ - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - }; - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Scale 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Scale - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.puff = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var options = $.extend(true, {}, o.options); - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var percent = parseInt(o.options.percent,10) || 150; // Set default puff percent - options.fade = true; // It's not a puff if it doesn't fade! :) - var original = {height: el.height(), width: el.width()}; // Save original - - // Adjust - var factor = percent / 100; - el.from = (mode == 'hide') ? original : {height: original.height * factor, width: original.width * factor}; - - // Animation - options.from = el.from; - options.percent = (mode == 'hide') ? percent : 100; - options.mode = mode; - - // Animate - el.effect('scale', options, o.duration, o.callback); - el.dequeue(); - }); - -}; - -$.effects.scale = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var options = $.extend(true, {}, o.options); - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var percent = parseInt(o.options.percent,10) || (parseInt(o.options.percent,10) == 0 ? 0 : (mode == 'hide' ? 0 : 100)); // Set default scaling percent - var direction = o.options.direction || 'both'; // Set default axis - var origin = o.options.origin; // The origin of the scaling - if (mode != 'effect') { // Set default origin and restore for show/hide - options.origin = origin || ['middle','center']; - options.restore = true; - } - var original = {height: el.height(), width: el.width()}; // Save original - el.from = o.options.from || (mode == 'show' ? {height: 0, width: 0} : original); // Default from state - - // Adjust - var factor = { // Set scaling factor - y: direction != 'horizontal' ? (percent / 100) : 1, - x: direction != 'vertical' ? (percent / 100) : 1 - }; - el.to = {height: original.height * factor.y, width: original.width * factor.x}; // Set to state - - if (o.options.fade) { // Fade option to support puff - if (mode == 'show') {el.from.opacity = 0; el.to.opacity = 1;}; - if (mode == 'hide') {el.from.opacity = 1; el.to.opacity = 0;}; - }; - - // Animation - options.from = el.from; options.to = el.to; options.mode = mode; - - // Animate - el.effect('size', options, o.duration, o.callback); - el.dequeue(); - }); - -}; - -$.effects.size = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','width','height','overflow','opacity']; - var props1 = ['position','top','left','overflow','opacity']; // Always restore - var props2 = ['width','height','overflow']; // Copy for children - var cProps = ['fontSize']; - var vProps = ['borderTopWidth', 'borderBottomWidth', 'paddingTop', 'paddingBottom']; - var hProps = ['borderLeftWidth', 'borderRightWidth', 'paddingLeft', 'paddingRight']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var restore = o.options.restore || false; // Default restore - var scale = o.options.scale || 'both'; // Default scale mode - var origin = o.options.origin; // The origin of the sizing - var original = {height: el.height(), width: el.width()}; // Save original - el.from = o.options.from || original; // Default from state - el.to = o.options.to || original; // Default to state - // Adjust - if (origin) { // Calculate baseline shifts - var baseline = $.effects.getBaseline(origin, original); - el.from.top = (original.height - el.from.height) * baseline.y; - el.from.left = (original.width - el.from.width) * baseline.x; - el.to.top = (original.height - el.to.height) * baseline.y; - el.to.left = (original.width - el.to.width) * baseline.x; - }; - var factor = { // Set scaling factor - from: {y: el.from.height / original.height, x: el.from.width / original.width}, - to: {y: el.to.height / original.height, x: el.to.width / original.width} - }; - if (scale == 'box' || scale == 'both') { // Scale the css box - if (factor.from.y != factor.to.y) { // Vertical props scaling - props = props.concat(vProps); - el.from = $.effects.setTransition(el, vProps, factor.from.y, el.from); - el.to = $.effects.setTransition(el, vProps, factor.to.y, el.to); - }; - if (factor.from.x != factor.to.x) { // Horizontal props scaling - props = props.concat(hProps); - el.from = $.effects.setTransition(el, hProps, factor.from.x, el.from); - el.to = $.effects.setTransition(el, hProps, factor.to.x, el.to); - }; - }; - if (scale == 'content' || scale == 'both') { // Scale the content - if (factor.from.y != factor.to.y) { // Vertical props scaling - props = props.concat(cProps); - el.from = $.effects.setTransition(el, cProps, factor.from.y, el.from); - el.to = $.effects.setTransition(el, cProps, factor.to.y, el.to); - }; - }; - $.effects.save(el, restore ? props : props1); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - el.css('overflow','hidden').css(el.from); // Shift - - // Animate - if (scale == 'content' || scale == 'both') { // Scale the children - vProps = vProps.concat(['marginTop','marginBottom']).concat(cProps); // Add margins/font-size - hProps = hProps.concat(['marginLeft','marginRight']); // Add margins - props2 = props.concat(vProps).concat(hProps); // Concat - el.find("*[width]").each(function(){ - child = $(this); - if (restore) $.effects.save(child, props2); - var c_original = {height: child.height(), width: child.width()}; // Save original - child.from = {height: c_original.height * factor.from.y, width: c_original.width * factor.from.x}; - child.to = {height: c_original.height * factor.to.y, width: c_original.width * factor.to.x}; - if (factor.from.y != factor.to.y) { // Vertical props scaling - child.from = $.effects.setTransition(child, vProps, factor.from.y, child.from); - child.to = $.effects.setTransition(child, vProps, factor.to.y, child.to); - }; - if (factor.from.x != factor.to.x) { // Horizontal props scaling - child.from = $.effects.setTransition(child, hProps, factor.from.x, child.from); - child.to = $.effects.setTransition(child, hProps, factor.to.x, child.to); - }; - child.css(child.from); // Shift children - child.animate(child.to, o.duration, o.options.easing, function(){ - if (restore) $.effects.restore(child, props2); // Restore children - }); // Animate children - }); - }; - - // Animate - el.animate(el.to, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, restore ? props : props1); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Shake 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Shake - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.shake = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var direction = o.options.direction || 'left'; // Default direction - var distance = o.options.distance || 20; // Default distance - var times = o.options.times || 3; // Default # of times - var speed = o.duration || o.options.duration || 140; // Default speed per shake - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - - // Animation - var animation = {}, animation1 = {}, animation2 = {}; - animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation1[ref] = (motion == 'pos' ? '+=' : '-=') + distance * 2; - animation2[ref] = (motion == 'pos' ? '-=' : '+=') + distance * 2; - - // Animate - el.animate(animation, speed, o.options.easing); - for (var i = 1; i < times; i++) { // Shakes - el.animate(animation1, speed, o.options.easing).animate(animation2, speed, o.options.easing); - }; - el.animate(animation1, speed, o.options.easing). - animate(animation, speed / 2, o.options.easing, function(){ // Last shake - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Slide 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Slide - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.slide = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var direction = o.options.direction || 'left'; // Default Direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true})); - if (mode == 'show') el.css(ref, motion == 'pos' ? -distance : distance); // Shift - - // Animation - var animation = {}; - animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Transfer 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Transfer - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.transfer = function(o) { - return this.queue(function() { - var elem = $(this), - target = $(o.options.to), - endPosition = target.offset(), - animation = { - top: endPosition.top, - left: endPosition.left, - height: target.innerHeight(), - width: target.innerWidth() - }, - startPosition = elem.offset(), - transfer = $('
') - .appendTo(document.body) - .addClass(o.options.className) - .css({ - top: startPosition.top, - left: startPosition.left, - height: elem.innerHeight(), - width: elem.innerWidth(), - position: 'absolute' - }) - .animate(animation, o.duration, o.options.easing, function() { - transfer.remove(); - (o.callback && o.callback.apply(elem[0], arguments)); - elem.dequeue(); - }); - }); -}; - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js deleted file mode 100644 index 9831410..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js +++ /dev/null @@ -1,273 +0,0 @@ -/* - * jQuery UI 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=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)}else{j=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"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery);;/* - * jQuery UI Draggable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.draggable",a.extend({},a.ui.mouse,{_init:function(){if(this.options.helper=="original"&&!(/^(?:r|a|f)/).test(this.element.css("position"))){this.element[0].style.position="relative"}(this.options.addClasses&&this.element.addClass("ui-draggable"));(this.options.disabled&&this.element.addClass("ui-draggable-disabled"));this._mouseInit()},destroy:function(){if(!this.element.data("draggable")){return}this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy()},_mouseCapture:function(b){var c=this.options;if(this.helper||c.disabled||a(b.target).is(".ui-resizable-handle")){return false}this.handle=this._getHandle(b);if(!this.handle){return false}return true},_mouseStart:function(b){var c=this.options;this.helper=this._createHelper(b);this._cacheHelperProportions();if(a.ui.ddmanager){a.ui.ddmanager.current=this}this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(b);this.originalPageX=b.pageX;this.originalPageY=b.pageY;if(c.cursorAt){this._adjustOffsetFromHelper(c.cursorAt)}if(c.containment){this._setContainment()}this._trigger("start",b);this._cacheHelperProportions();if(a.ui.ddmanager&&!c.dropBehaviour){a.ui.ddmanager.prepareOffsets(this,b)}this.helper.addClass("ui-draggable-dragging");this._mouseDrag(b,true);return true},_mouseDrag:function(b,d){this.position=this._generatePosition(b);this.positionAbs=this._convertPositionTo("absolute");if(!d){var c=this._uiHash();this._trigger("drag",b,c);this.position=c.position}if(!this.options.axis||this.options.axis!="y"){this.helper[0].style.left=this.position.left+"px"}if(!this.options.axis||this.options.axis!="x"){this.helper[0].style.top=this.position.top+"px"}if(a.ui.ddmanager){a.ui.ddmanager.drag(this,b)}return false},_mouseStop:function(c){var d=false;if(a.ui.ddmanager&&!this.options.dropBehaviour){d=a.ui.ddmanager.drop(this,c)}if(this.dropped){d=this.dropped;this.dropped=false}if((this.options.revert=="invalid"&&!d)||(this.options.revert=="valid"&&d)||this.options.revert===true||(a.isFunction(this.options.revert)&&this.options.revert.call(this.element,d))){var b=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){b._trigger("stop",c);b._clear()})}else{this._trigger("stop",c);this._clear()}return false},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?true:false;a(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==b.target){c=true}});return c},_createHelper:function(c){var d=this.options;var b=a.isFunction(d.helper)?a(d.helper.apply(this.element[0],[c])):(d.helper=="clone"?this.element.clone():this.element);if(!b.parents("body").length){b.appendTo((d.appendTo=="parent"?this.element[0].parentNode:d.appendTo))}if(b[0]!=this.element[0]&&!(/(fixed|absolute)/).test(b.css("position"))){b.css("position","absolute")}return b},_adjustOffsetFromHelper:function(b){if(b.left!=undefined){this.offset.click.left=b.left+this.margins.left}if(b.right!=undefined){this.offset.click.left=this.helperProportions.width-b.right+this.margins.left}if(b.top!=undefined){this.offset.click.top=b.top+this.margins.top}if(b.bottom!=undefined){this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top}},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])){b.left+=this.scrollParent.scrollLeft();b.top+=this.scrollParent.scrollTop()}if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)){b={top:0,left:0}}return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var b=this.element.position();return{top:b.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:b.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else{return{top:0,left:0}}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e=this.options;if(e.containment=="parent"){e.containment=this.helper[0].parentNode}if(e.containment=="document"||e.containment=="window"){this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,a(e.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a(e.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]}if(!(/^(document|window|parent)$/).test(e.containment)&&e.containment.constructor!=Array){var c=a(e.containment)[0];if(!c){return}var d=a(e.containment).offset();var b=(a(c).css("overflow")!="hidden");this.containment=[d.left+(parseInt(a(c).css("borderLeftWidth"),10)||0)+(parseInt(a(c).css("paddingLeft"),10)||0)-this.margins.left,d.top+(parseInt(a(c).css("borderTopWidth"),10)||0)+(parseInt(a(c).css("paddingTop"),10)||0)-this.margins.top,d.left+(b?Math.max(c.scrollWidth,c.offsetWidth):c.offsetWidth)-(parseInt(a(c).css("borderLeftWidth"),10)||0)-(parseInt(a(c).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,d.top+(b?Math.max(c.scrollHeight,c.offsetHeight):c.offsetHeight)-(parseInt(a(c).css("borderTopWidth"),10)||0)-(parseInt(a(c).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}else{if(e.containment.constructor==Array){this.containment=e.containment}}},_convertPositionTo:function(f,h){if(!h){h=this.position}var c=f=="absolute"?1:-1;var e=this.options,b=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=(/(html|body)/i).test(b[0].tagName);return{top:(h.top+this.offset.relative.top*c+this.offset.parent.top*c-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():(g?0:b.scrollTop()))*c)),left:(h.left+this.offset.relative.left*c+this.offset.parent.left*c-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:b.scrollLeft())*c))}},_generatePosition:function(e){var h=this.options,b=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,i=(/(html|body)/i).test(b[0].tagName);if(this.cssPosition=="relative"&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){this.offset.relative=this._getRelativeOffset()}var d=e.pageX;var c=e.pageY;if(this.originalPosition){if(this.containment){if(e.pageX-this.offset.click.leftthis.containment[2]){d=this.containment[2]+this.offset.click.left}if(e.pageY-this.offset.click.top>this.containment[3]){c=this.containment[3]+this.offset.click.top}}if(h.grid){var g=this.originalPageY+Math.round((c-this.originalPageY)/h.grid[1])*h.grid[1];c=this.containment?(!(g-this.offset.click.topthis.containment[3])?g:(!(g-this.offset.click.topthis.containment[2])?f:(!(f-this.offset.click.left').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css(a(this).offset()).appendTo("body")})},stop:function(b,c){a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});a.ui.plugin.add("draggable","opacity",{start:function(c,d){var b=a(d.helper),e=a(this).data("draggable").options;if(b.css("opacity")){e._opacity=b.css("opacity")}b.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("draggable").options;if(d._opacity){a(c.helper).css("opacity",d._opacity)}}});a.ui.plugin.add("draggable","scroll",{start:function(c,d){var b=a(this).data("draggable");if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){b.overflowOffset=b.scrollParent.offset()}},drag:function(d,e){var c=a(this).data("draggable"),f=c.options,b=false;if(c.scrollParent[0]!=document&&c.scrollParent[0].tagName!="HTML"){if(!f.axis||f.axis!="x"){if((c.overflowOffset.top+c.scrollParent[0].offsetHeight)-d.pageY=0;v--){var s=g.snapElements[v].left,n=s+g.snapElements[v].width,m=g.snapElements[v].top,A=m+g.snapElements[v].height;if(!((s-y=p&&n<=k)||(m>=p&&m<=k)||(nk))&&((e>=g&&e<=c)||(d>=g&&d<=c)||(ec));break;default:return false;break}};a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(e,g){var b=a.ui.ddmanager.droppables[e.options.scope];var f=g?g.type:null;var h=(e.currentItem||e.element).find(":data(droppable)").andSelf();droppablesLoop:for(var d=0;d').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=j.handles||(!c(".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 k=this.handles.split(",");this.handles={};for(var f=0;f');if(/sw|se|ne|nw/.test(h)){g.css({zIndex:++j.zIndex})}if("se"==h){g.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[h]=".ui-resizable-"+h;this.element.append(g)}}this._renderAxis=function(p){p=p||this.element;for(var m in this.handles){if(this.handles[m].constructor==String){this.handles[m]=c(this.handles[m],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var n=c(this.handles[m],this.element),o=0;o=/sw|ne|nw|se|n|s/.test(m)?n.outerHeight():n.outerWidth();var l=["padding",/ne|nw|n/.test(m)?"Top":/se|sw|s/.test(m)?"Bottom":/^e$/.test(m)?"Right":"Left"].join("");p.css(l,o);this._proportionallyResize()}if(!c(this.handles[m]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!e.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}e.axis=i&&i[1]?i[1]:"se"}});if(j.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){c(this).removeClass("ui-resizable-autohide");e._handles.show()},function(){if(!e.resizing){c(this).addClass("ui-resizable-autohide");e._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var d=function(f){c(f).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){d(this.element);var e=this.element;e.parent().append(this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")})).end().remove()}this.originalElement.css("resize",this.originalResizeStyle);d(this.originalElement)},_mouseCapture:function(e){var f=false;for(var d in this.handles){if(c(this.handles[d])[0]==e.target){f=true}}return this.options.disabled||!!f},_mouseStart:function(f){var i=this.options,e=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(d.is(".ui-draggable")||(/absolute/).test(d.css("position"))){d.css({position:"absolute",top:e.top,left:e.left})}if(c.browser.opera&&(/relative/).test(d.css("position"))){d.css({position:"relative",top:"auto",left:"auto"})}this._renderProxy();var j=b(this.helper.css("left")),g=b(this.helper.css("top"));if(i.containment){j+=c(i.containment).scrollLeft()||0;g+=c(i.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:j,top:g};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:j,top:g};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:f.pageX,top:f.pageY};this.aspectRatio=(typeof i.aspectRatio=="number")?i.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var h=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",h=="auto"?this.axis+"-resize":h);d.addClass("ui-resizable-resizing");this._propagate("start",f);return true},_mouseDrag:function(d){var g=this.helper,f=this.options,l={},p=this,i=this.originalMousePosition,m=this.axis;var q=(d.pageX-i.left)||0,n=(d.pageY-i.top)||0;var h=this._change[m];if(!h){return false}var k=h.apply(this,[d,q,n]),j=c.browser.msie&&c.browser.version<7,e=this.sizeDiff;if(this._aspectRatio||d.shiftKey){k=this._updateRatio(k,d)}k=this._respectSize(k,d);this._propagate("resize",d);g.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(k);this._trigger("resize",d,this.ui());return false},_mouseStop:function(g){this.resizing=false;var h=this.options,l=this;if(this._helper){var f=this._proportionallyResizeElements,d=f.length&&(/textarea/i).test(f[0].nodeName),e=d&&c.ui.hasScroll(f[0],"left")?0:l.sizeDiff.height,j=d?0:l.sizeDiff.width;var m={width:(l.size.width-j),height:(l.size.height-e)},i=(parseInt(l.element.css("left"),10)+(l.position.left-l.originalPosition.left))||null,k=(parseInt(l.element.css("top"),10)+(l.position.top-l.originalPosition.top))||null;if(!h.animate){this.element.css(c.extend(m,{top:k,left:i}))}l.helper.height(l.size.height);l.helper.width(l.size.width);if(this._helper&&!h.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",g);if(this._helper){this.helper.remove()}return false},_updateCache:function(d){var e=this.options;this.offset=this.helper.offset();if(a(d.left)){this.position.left=d.left}if(a(d.top)){this.position.top=d.top}if(a(d.height)){this.size.height=d.height}if(a(d.width)){this.size.width=d.width}},_updateRatio:function(g,f){var h=this.options,i=this.position,e=this.size,d=this.axis;if(g.height){g.width=(e.height*this.aspectRatio)}else{if(g.width){g.height=(e.width/this.aspectRatio)}}if(d=="sw"){g.left=i.left+(e.width-g.width);g.top=null}if(d=="nw"){g.top=i.top+(e.height-g.height);g.left=i.left+(e.width-g.width)}return g},_respectSize:function(k,f){var i=this.helper,h=this.options,q=this._aspectRatio||f.shiftKey,p=this.axis,s=a(k.width)&&h.maxWidth&&(h.maxWidthk.width),r=a(k.height)&&h.minHeight&&(h.minHeight>k.height);if(g){k.width=h.minWidth}if(r){k.height=h.minHeight}if(s){k.width=h.maxWidth}if(l){k.height=h.maxHeight}var e=this.originalPosition.left+this.originalSize.width,n=this.position.top+this.size.height;var j=/sw|nw|w/.test(p),d=/nw|ne|n/.test(p);if(g&&j){k.left=e-h.minWidth}if(s&&j){k.left=e-h.maxWidth}if(r&&d){k.top=n-h.minHeight}if(l&&d){k.top=n-h.maxHeight}var m=!k.width&&!k.height;if(m&&!k.left&&k.top){k.top=null}else{if(m&&!k.top&&k.left){k.left=null}}return k},_proportionallyResize:function(){var j=this.options;if(!this._proportionallyResizeElements.length){return}var f=this.helper||this.element;for(var e=0;e');var d=c.browser.msie&&c.browser.version<7,f=(d?1:0),g=(d?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+g,height:this.element.outerHeight()+g,position:"absolute",left:this.elementOffset.left-f+"px",top:this.elementOffset.top-f+"px",zIndex:++h.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(f,e,d){return{width:this.originalSize.width+e}},w:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{left:h.left+e,width:f.width-e}},n:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{top:h.top+d,height:f.height-d}},s:function(f,e,d){return{height:this.originalSize.height+d}},se:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},sw:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[f,e,d]))},ne:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},nw:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[f,e,d]))}},_propagate:function(e,d){c.ui.plugin.call(this,e,[d,this.ui()]);(e!="resize"&&this._trigger(e,d,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}}}));c.extend(c.ui.resizable,{version:"1.7",eventPrefix:"resize",defaults:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,cancel:":input,option",containment:false,delay:0,distance:1,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000}});c.ui.plugin.add("resizable","alsoResize",{start:function(e,f){var d=c(this).data("resizable"),g=d.options;_store=function(h){c(h).each(function(){c(this).data("resizable-alsoresize",{width:parseInt(c(this).width(),10),height:parseInt(c(this).height(),10),left:parseInt(c(this).css("left"),10),top:parseInt(c(this).css("top"),10)})})};if(typeof(g.alsoResize)=="object"&&!g.alsoResize.parentNode){if(g.alsoResize.length){g.alsoResize=g.alsoResize[0];_store(g.alsoResize)}else{c.each(g.alsoResize,function(h,i){_store(h)})}}else{_store(g.alsoResize)}},resize:function(f,h){var e=c(this).data("resizable"),i=e.options,g=e.originalSize,k=e.originalPosition;var j={height:(e.size.height-g.height)||0,width:(e.size.width-g.width)||0,top:(e.position.top-k.top)||0,left:(e.position.left-k.left)||0},d=function(l,m){c(l).each(function(){var p=c(this),q=c(this).data("resizable-alsoresize"),o={},n=m&&m.length?m:["width","height","top","left"];c.each(n||["width","height","top","left"],function(r,t){var s=(q[t]||0)+(j[t]||0);if(s&&s>=0){o[t]=s||null}});if(/relative/.test(p.css("position"))&&c.browser.opera){e._revertToRelativePosition=true;p.css({position:"absolute",top:"auto",left:"auto"})}p.css(o)})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.nodeType){c.each(i.alsoResize,function(l,m){d(l,m)})}else{d(i.alsoResize)}},stop:function(e,f){var d=c(this).data("resizable");if(d._revertToRelativePosition&&c.browser.opera){d._revertToRelativePosition=false;el.css({position:"relative"})}c(this).removeData("resizable-alsoresize-start")}});c.ui.plugin.add("resizable","animate",{stop:function(h,m){var n=c(this).data("resizable"),i=n.options;var g=n._proportionallyResizeElements,d=g.length&&(/textarea/i).test(g[0].nodeName),e=d&&c.ui.hasScroll(g[0],"left")?0:n.sizeDiff.height,k=d?0:n.sizeDiff.width;var f={width:(n.size.width-k),height:(n.size.height-e)},j=(parseInt(n.element.css("left"),10)+(n.position.left-n.originalPosition.left))||null,l=(parseInt(n.element.css("top"),10)+(n.position.top-n.originalPosition.top))||null;n.element.animate(c.extend(f,l&&j?{top:l,left:j}:{}),{duration:i.animateDuration,easing:i.animateEasing,step:function(){var o={width:parseInt(n.element.css("width"),10),height:parseInt(n.element.css("height"),10),top:parseInt(n.element.css("top"),10),left:parseInt(n.element.css("left"),10)};if(g&&g.length){c(g[0]).css({width:o.width,height:o.height})}n._updateCache(o);n._propagate("resize",h)}})}});c.ui.plugin.add("resizable","containment",{start:function(e,q){var s=c(this).data("resizable"),i=s.options,k=s.element;var f=i.containment,j=(f instanceof c)?f.get(0):(/parent/.test(f))?k.parent().get(0):f;if(!j){return}s.containerElement=c(j);if(/document/.test(f)||f==document){s.containerOffset={left:0,top:0};s.containerPosition={left:0,top:0};s.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var m=c(j),h=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){h[p]=b(m.css("padding"+o))});s.containerOffset=m.offset();s.containerPosition=m.position();s.containerSize={height:(m.innerHeight()-h[3]),width:(m.innerWidth()-h[1])};var n=s.containerOffset,d=s.containerSize.height,l=s.containerSize.width,g=(c.ui.hasScroll(j,"left")?j.scrollWidth:l),r=(c.ui.hasScroll(j)?j.scrollHeight:d);s.parentData={element:j,left:n.left,top:n.top,width:g,height:r}}},resize:function(f,p){var s=c(this).data("resizable"),h=s.options,e=s.containerSize,n=s.containerOffset,l=s.size,m=s.position,q=h._aspectRatio||f.shiftKey,d={top:0,left:0},g=s.containerElement;if(g[0]!=document&&(/static/).test(g.css("position"))){d=n}if(m.left<(s._helper?n.left:0)){s.size.width=s.size.width+(s._helper?(s.position.left-n.left):(s.position.left-d.left));if(q){s.size.height=s.size.width/h.aspectRatio}s.position.left=h.helper?n.left:0}if(m.top<(s._helper?n.top:0)){s.size.height=s.size.height+(s._helper?(s.position.top-n.top):s.position.top);if(q){s.size.width=s.size.height*h.aspectRatio}s.position.top=s._helper?n.top:0}s.offset.left=s.parentData.left+s.position.left;s.offset.top=s.parentData.top+s.position.top;var k=Math.abs((s._helper?s.offset.left-d.left:(s.offset.left-d.left))+s.sizeDiff.width),r=Math.abs((s._helper?s.offset.top-d.top:(s.offset.top-n.top))+s.sizeDiff.height);var j=s.containerElement.get(0)==s.element.parent().get(0),i=/relative|absolute/.test(s.containerElement.css("position"));if(j&&i){k-=s.parentData.left}if(k+s.size.width>=s.parentData.width){s.size.width=s.parentData.width-k;if(q){s.size.height=s.size.width/h.aspectRatio}}if(r+s.size.height>=s.parentData.height){s.size.height=s.parentData.height-r;if(q){s.size.width=s.size.height*h.aspectRatio}}},stop:function(e,m){var p=c(this).data("resizable"),f=p.options,k=p.position,l=p.containerOffset,d=p.containerPosition,g=p.containerElement;var i=c(p.helper),q=i.offset(),n=i.outerWidth()-p.sizeDiff.width,j=i.outerHeight()-p.sizeDiff.height;if(p._helper&&!f.animate&&(/relative/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}if(p._helper&&!f.animate&&(/static/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}}});c.ui.plugin.add("resizable","ghost",{start:function(f,g){var d=c(this).data("resizable"),h=d.options,e=d.size;d.ghost=d.originalElement.clone();d.ghost.css({opacity:0.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof h.ghost=="string"?h.ghost:"");d.ghost.appendTo(d.helper)},resize:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost){d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})}},stop:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost&&d.helper){d.helper.get(0).removeChild(d.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(d,l){var n=c(this).data("resizable"),g=n.options,j=n.size,h=n.originalSize,i=n.originalPosition,m=n.axis,k=g._aspectRatio||d.shiftKey;g.grid=typeof g.grid=="number"?[g.grid,g.grid]:g.grid;var f=Math.round((j.width-h.width)/(g.grid[0]||1))*(g.grid[0]||1),e=Math.round((j.height-h.height)/(g.grid[1]||1))*(g.grid[1]||1);if(/^(se|s|e)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e}else{if(/^(ne)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e}else{if(/^(sw)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.left=i.left-f}else{n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e;n.position.left=i.left-f}}}}});var b=function(d){return parseInt(d,10)||0};var a=function(d){return !isNaN(parseInt(d,10))}})(jQuery);;/* - * jQuery UI Selectable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Selectables - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.selectable",a.extend({},a.ui.mouse,{_init:function(){var b=this;this.element.addClass("ui-selectable");this.dragged=false;var c;this.refresh=function(){c=a(b.options.filter,b.element[0]);c.each(function(){var d=a(this);var e=d.offset();a.data(this,"selectable-item",{element:this,$element:d,left:e.left,top:e.top,right:e.left+d.outerWidth(),bottom:e.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"),selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=c.addClass("ui-selectee");this._mouseInit();this.helper=a(document.createElement("div")).css({border:"1px dotted black"}).addClass("ui-selectable-helper")},destroy:function(){this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy()},_mouseStart:function(d){var b=this;this.opos=[d.pageX,d.pageY];if(this.options.disabled){return}var c=this.options;this.selectees=a(c.filter,this.element[0]);this._trigger("start",d);a("body").append(this.helper);this.helper.css({"z-index":100,position:"absolute",left:d.clientX,top:d.clientY,width:0,height:0});if(c.autoRefresh){this.refresh()}this.selectees.filter(".ui-selected").each(function(){var e=a.data(this,"selectable-item");e.startselected=true;if(!d.metaKey){e.$element.removeClass("ui-selected");e.selected=false;e.$element.addClass("ui-unselecting");e.unselecting=true;b._trigger("unselecting",d,{unselecting:e.element})}});a(d.target).parents().andSelf().each(function(){var e=a.data(this,"selectable-item");if(e){e.$element.removeClass("ui-unselecting").addClass("ui-selecting");e.unselecting=false;e.selecting=true;e.selected=true;b._trigger("selecting",d,{selecting:e.element});return false}})},_mouseDrag:function(i){var c=this;this.dragged=true;if(this.options.disabled){return}var e=this.options;var d=this.opos[0],h=this.opos[1],b=i.pageX,g=i.pageY;if(d>b){var f=b;b=d;d=f}if(h>g){var f=g;g=h;h=f}this.helper.css({left:d,top:h,width:b-d,height:g-h});this.selectees.each(function(){var j=a.data(this,"selectable-item");if(!j||j.element==c.element[0]){return}var k=false;if(e.tolerance=="touch"){k=(!(j.left>b||j.rightg||j.bottomd&&j.righth&&j.bottom=0;b--){this.items[b].item.removeData("sortable-item")}},_mouseCapture:function(e,f){if(this.reverting){return false}if(this.options.disabled||this.options.type=="static"){return false}this._refreshItems(e);var d=null,c=this,b=a(e.target).parents().each(function(){if(a.data(this,"sortable-item")==c){d=a(this);return false}});if(a.data(e.target,"sortable-item")==c){d=a(e.target)}if(!d){return false}if(this.options.handle&&!f){var g=false;a(this.options.handle,d).find("*").andSelf().each(function(){if(this==e.target){g=true}});if(!g){return false}}this.currentItem=d;this._removeCurrentsFromItems();return true},_mouseStart:function(e,f,b){var g=this.options,c=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(e);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");a.extend(this.offset,{click:{left:e.pageX-this.offset.left,top:e.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(e);this.originalPageX=e.pageX;this.originalPageY=e.pageY;if(g.cursorAt){this._adjustOffsetFromHelper(g.cursorAt)}this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!=this.currentItem[0]){this.currentItem.hide()}this._createPlaceholder();if(g.containment){this._setContainment()}if(g.cursor){if(a("body").css("cursor")){this._storedCursor=a("body").css("cursor")}a("body").css("cursor",g.cursor)}if(g.opacity){if(this.helper.css("opacity")){this._storedOpacity=this.helper.css("opacity")}this.helper.css("opacity",g.opacity)}if(g.zIndex){if(this.helper.css("zIndex")){this._storedZIndex=this.helper.css("zIndex")}this.helper.css("zIndex",g.zIndex)}if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){this.overflowOffset=this.scrollParent.offset()}this._trigger("start",e,this._uiHash());if(!this._preserveHelperProportions){this._cacheHelperProportions()}if(!b){for(var d=this.containers.length-1;d>=0;d--){this.containers[d]._trigger("activate",e,c._uiHash(this))}}if(a.ui.ddmanager){a.ui.ddmanager.current=this}if(a.ui.ddmanager&&!g.dropBehaviour){a.ui.ddmanager.prepareOffsets(this,e)}this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(e);return true},_mouseDrag:function(f){this.position=this._generatePosition(f);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs}if(this.options.scroll){var g=this.options,b=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-f.pageY=0;d--){var e=this.items[d],c=e.item[0],h=this._intersectsWithPointer(e);if(!h){continue}if(c!=this.currentItem[0]&&this.placeholder[h==1?"next":"prev"]()[0]!=c&&!a.ui.contains(this.placeholder[0],c)&&(this.options.type=="semi-dynamic"?!a.ui.contains(this.element[0],c):true)){this.direction=h==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(e)){this._rearrange(f,e)}else{break}this._trigger("change",f,this._uiHash());break}}this._contactContainers(f);if(a.ui.ddmanager){a.ui.ddmanager.drag(this,f)}this._trigger("sort",f,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(c,d){if(!c){return}if(a.ui.ddmanager&&!this.options.dropBehaviour){a.ui.ddmanager.drop(this,c)}if(this.options.revert){var b=this;var e=b.placeholder.offset();b.reverting=true;a(this.helper).animate({left:e.left-this.offset.parent.left-b.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:e.top-this.offset.parent.top-b.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){b._clear(c)})}else{this._clear(c,d)}return false},cancel:function(){var b=this;if(this.dragging){this._mouseUp();if(this.options.helper=="original"){this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else{this.currentItem.show()}for(var c=this.containers.length-1;c>=0;c--){this.containers[c]._trigger("deactivate",null,b._uiHash(this));if(this.containers[c].containerCache.over){this.containers[c]._trigger("out",null,b._uiHash(this));this.containers[c].containerCache.over=0}}}if(this.placeholder[0].parentNode){this.placeholder[0].parentNode.removeChild(this.placeholder[0])}if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode){this.helper.remove()}a.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){a(this.domPosition.prev).after(this.currentItem)}else{a(this.domPosition.parent).prepend(this.currentItem)}return true},serialize:function(d){var b=this._getItemsAsjQuery(d&&d.connected);var c=[];d=d||{};a(b).each(function(){var e=(a(d.item||this).attr(d.attribute||"id")||"").match(d.expression||(/(.+)[-=_](.+)/));if(e){c.push((d.key||e[1]+"[]")+"="+(d.key&&d.expression?e[1]:e[2]))}});return c.join("&")},toArray:function(d){var b=this._getItemsAsjQuery(d&&d.connected);var c=[];d=d||{};b.each(function(){c.push(a(d.item||this).attr(d.attribute||"id")||"")});return c},_intersectsWith:function(m){var e=this.positionAbs.left,d=e+this.helperProportions.width,k=this.positionAbs.top,j=k+this.helperProportions.height;var f=m.left,c=f+m.width,n=m.top,i=n+m.height;var o=this.offset.click.top,h=this.offset.click.left;var g=(k+o)>n&&(k+o)f&&(e+h)m[this.floating?"width":"height"])){return g}else{return(f0?"down":"up")},_getDragHorizontalDirection:function(){var b=this.positionAbs.left-this.lastPositionAbs.left;return b!=0&&(b>0?"right":"left")},refresh:function(b){this._refreshItems(b);this.refreshPositions()},_connectWith:function(){var b=this.options;return b.connectWith.constructor==String?[b.connectWith]:b.connectWith},_getItemsAsjQuery:function(b){var l=this;var g=[];var e=[];var h=this._connectWith();if(h&&b){for(var d=h.length-1;d>=0;d--){var k=a(h[d]);for(var c=k.length-1;c>=0;c--){var f=a.data(k[c],"sortable");if(f&&f!=this&&!f.options.disabled){e.push([a.isFunction(f.options.items)?f.options.items.call(f.element):a(f.options.items,f.element).not(".ui-sortable-helper"),f])}}}}e.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper"),this]);for(var d=e.length-1;d>=0;d--){e[d][0].each(function(){g.push(this)})}return a(g)},_removeCurrentsFromItems:function(){var d=this.currentItem.find(":data(sortable-item)");for(var c=0;c=0;e--){var m=a(l[e]);for(var d=m.length-1;d>=0;d--){var g=a.data(m[d],"sortable");if(g&&g!=this&&!g.options.disabled){f.push([a.isFunction(g.options.items)?g.options.items.call(g.element[0],b,{item:this.currentItem}):a(g.options.items,g.element),g]);this.containers.push(g)}}}}for(var e=f.length-1;e>=0;e--){var k=f[e][1];var c=f[e][0];for(var d=0,n=c.length;d=0;d--){var e=this.items[d];if(e.instance!=this.currentContainer&&this.currentContainer&&e.item[0]!=this.currentItem[0]){continue}var c=this.options.toleranceElement?a(this.options.toleranceElement,e.item):e.item;if(!b){e.width=c.outerWidth();e.height=c.outerHeight()}var f=c.offset();e.left=f.left;e.top=f.top}if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this)}else{for(var d=this.containers.length-1;d>=0;d--){var f=this.containers[d].element.offset();this.containers[d].containerCache.left=f.left;this.containers[d].containerCache.top=f.top;this.containers[d].containerCache.width=this.containers[d].element.outerWidth();this.containers[d].containerCache.height=this.containers[d].element.outerHeight()}}},_createPlaceholder:function(d){var b=d||this,e=b.options;if(!e.placeholder||e.placeholder.constructor==String){var c=e.placeholder;e.placeholder={element:function(){var f=a(document.createElement(b.currentItem[0].nodeName)).addClass(c||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!c){f.style.visibility="hidden"}return f},update:function(f,g){if(c&&!e.forcePlaceholderSize){return}if(!g.height()){g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10))}if(!g.width()){g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||0,10))}}}}b.placeholder=a(e.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);e.placeholder.update(b,b.placeholder)},_contactContainers:function(d){for(var c=this.containers.length-1;c>=0;c--){if(this._intersectsWith(this.containers[c].containerCache)){if(!this.containers[c].containerCache.over){if(this.currentContainer!=this.containers[c]){var h=10000;var g=null;var e=this.positionAbs[this.containers[c].floating?"left":"top"];for(var b=this.items.length-1;b>=0;b--){if(!a.ui.contains(this.containers[c].element[0],this.items[b].item[0])){continue}var f=this.items[b][this.containers[c].floating?"left":"top"];if(Math.abs(f-e)this.containment[2]){d=this.containment[2]+this.offset.click.left}if(e.pageY-this.offset.click.top>this.containment[3]){c=this.containment[3]+this.offset.click.top}}if(h.grid){var g=this.originalPageY+Math.round((c-this.originalPageY)/h.grid[1])*h.grid[1];c=this.containment?(!(g-this.offset.click.topthis.containment[3])?g:(!(g-this.offset.click.topthis.containment[2])?f:(!(f-this.offset.click.left=0;c--){if(a.ui.contains(this.containers[c].element[0],this.currentItem[0])&&!e){f.push((function(g){return function(h){g._trigger("receive",h,this._uiHash(this))}}).call(this,this.containers[c]));f.push((function(g){return function(h){g._trigger("update",h,this._uiHash(this))}}).call(this,this.containers[c]))}}}for(var c=this.containers.length-1;c>=0;c--){if(!e){f.push((function(g){return function(h){g._trigger("deactivate",h,this._uiHash(this))}}).call(this,this.containers[c]))}if(this.containers[c].containerCache.over){f.push((function(g){return function(h){g._trigger("out",h,this._uiHash(this))}}).call(this,this.containers[c]));this.containers[c].containerCache.over=0}}if(this._storedCursor){a("body").css("cursor",this._storedCursor)}if(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(!e){this._trigger("beforeStop",d,this._uiHash());for(var c=0;c *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1000}})})(jQuery);;/* - * jQuery UI Accordion 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Accordion - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.accordion",{_init:function(){var d=this.options,b=this;this.running=0;if(d.collapsible==a.ui.accordion.defaults.collapsible&&d.alwaysOpen!=a.ui.accordion.defaults.alwaysOpen){d.collapsible=!d.alwaysOpen}if(d.navigation){var c=this.element.find("a").filter(d.navigationFilter);if(c.length){if(c.filter(d.header).length){this.active=c}else{this.active=c.parent().parent().prev();c.addClass("ui-accordion-content-active")}}}this.element.addClass("ui-accordion ui-widget ui-helper-reset");if(this.element[0].nodeName=="UL"){this.element.children("li").addClass("ui-accordion-li-fix")}this.headers=this.element.find(d.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){a(this).removeClass("ui-state-focus")});this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");this.active=this._findActive(this.active||d.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");this.active.next().addClass("ui-accordion-content-active");a("").addClass("ui-icon "+d.icons.header).prependTo(this.headers);this.active.find(".ui-icon").toggleClass(d.icons.header).toggleClass(d.icons.headerSelected);if(a.browser.msie){this.element.find("a").css("zoom","1")}this.resize();this.element.attr("role","tablist");this.headers.attr("role","tab").bind("keydown",function(e){return b._keydown(e)}).next().attr("role","tabpanel");this.headers.not(this.active||"").attr("aria-expanded","false").attr("tabIndex","-1").next().hide();if(!this.active.length){this.headers.eq(0).attr("tabIndex","0")}else{this.active.attr("aria-expanded","true").attr("tabIndex","0")}if(!a.browser.safari){this.headers.find("a").attr("tabIndex","-1")}if(d.event){this.headers.bind((d.event)+".accordion",function(e){return b._clickHandler.call(b,e,this)})}},destroy:function(){var c=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role").unbind(".accordion").removeData("accordion");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex");this.headers.find("a").removeAttr("tabindex");this.headers.children(".ui-icon").remove();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");if(c.autoHeight||c.fillHeight){b.css("height","")}},_setData:function(b,c){if(b=="alwaysOpen"){b="collapsible";c=!c}a.widget.prototype._setData.apply(this,arguments)},_keydown:function(e){var g=this.options,f=a.ui.keyCode;if(g.disabled||e.altKey||e.ctrlKey){return}var d=this.headers.length;var b=this.headers.index(e.target);var c=false;switch(e.keyCode){case f.RIGHT:case f.DOWN:c=this.headers[(b+1)%d];break;case f.LEFT:case f.UP:c=this.headers[(b-1+d)%d];break;case f.SPACE:case f.ENTER:return this._clickHandler({target:e.target},e.target)}if(c){a(e.target).attr("tabIndex","-1");a(c).attr("tabIndex","0");c.focus();return false}return true},resize:function(){var e=this.options,d;if(e.fillSpace){if(a.browser.msie){var b=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}d=this.element.parent().height();if(a.browser.msie){this.element.parent().css("overflow",b)}this.headers.each(function(){d-=a(this).outerHeight()});var c=0;this.headers.next().each(function(){c=Math.max(c,a(this).innerHeight()-a(this).height())}).height(Math.max(0,d-c)).css("overflow","auto")}else{if(e.autoHeight){d=0;this.headers.next().each(function(){d=Math.max(d,a(this).outerHeight())}).height(d)}}},activate:function(b){var c=this._findActive(b)[0];this._clickHandler({target:c},c)},_findActive:function(b){return b?typeof b=="number"?this.headers.filter(":eq("+b+")"):this.headers.not(this.headers.not(b)):b===false?a([]):this.headers.filter(":eq(0)")},_clickHandler:function(b,f){var d=this.options;if(d.disabled){return false}if(!b.target&&d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var h=this.active.next(),e={options:d,newHeader:a([]),oldHeader:d.active,newContent:a([]),oldContent:h},c=(this.active=a([]));this._toggle(c,h,e);return false}var g=a(b.currentTarget||f);var i=g[0]==this.active[0];if(this.running||(!d.collapsible&&i)){return false}this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");if(!i){g.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").find(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);g.next().addClass("ui-accordion-content-active")}var c=g.next(),h=this.active.next(),e={options:d,newHeader:i&&d.collapsible?a([]):g,oldHeader:this.active,newContent:i&&d.collapsible?a([]):c.find("> *"),oldContent:h.find("> *")},j=this.headers.index(this.active[0])>this.headers.index(g[0]);this.active=i?a([]):g;this._toggle(c,h,e,i,j);return false},_toggle:function(b,i,g,j,k){var d=this.options,m=this;this.toShow=b;this.toHide=i;this.data=g;var c=function(){if(!m){return}return m._completed.apply(m,arguments)};this._trigger("changestart",null,this.data);this.running=i.size()===0?b.size():i.size();if(d.animated){var f={};if(d.collapsible&&j){f={toShow:a([]),toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}else{f={toShow:b,toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}if(!d.proxied){d.proxied=d.animated}if(!d.proxiedDuration){d.proxiedDuration=d.duration}d.animated=a.isFunction(d.proxied)?d.proxied(f):d.proxied;d.duration=a.isFunction(d.proxiedDuration)?d.proxiedDuration(f):d.proxiedDuration;var l=a.ui.accordion.animations,e=d.duration,h=d.animated;if(!l[h]){l[h]=function(n){this.slide(n,{easing:h,duration:e||700})}}l[h](f)}else{if(d.collapsible&&j){b.toggle()}else{i.hide();b.show()}c(true)}i.prev().attr("aria-expanded","false").attr("tabIndex","-1").blur();b.prev().attr("aria-expanded","true").attr("tabIndex","0").focus()},_completed:function(b){var c=this.options;this.running=b?0:--this.running;if(this.running){return}if(c.clearStyle){this.toShow.add(this.toHide).css({height:"",overflow:""})}this._trigger("change",null,this.data)}});a.extend(a.ui.accordion,{version:"1.7",defaults:{active:null,alwaysOpen:true,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> 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()}},animations:{slide:function(j,h){j=a.extend({easing:"swing",duration:300},j,h);if(!j.toHide.size()){j.toShow.animate({height:"show"},j);return}if(!j.toShow.size()){j.toHide.animate({height:"hide"},j);return}var c=j.toShow.css("overflow"),g,d={},f={},e=["height","paddingTop","paddingBottom"],b;var i=j.toShow;b=i[0].style.width;i.width(parseInt(i.parent().width(),10)-parseInt(i.css("paddingLeft"),10)-parseInt(i.css("paddingRight"),10)-parseInt(i.css("borderLeftWidth"),10)-parseInt(i.css("borderRightWidth"),10));a.each(e,function(k,m){f[m]="hide";var l=(""+a.css(j.toShow[0],m)).match(/^([\d+-.]+)(.*)$/);d[m]={value:l[1],unit:l[2]||"px"}});j.toShow.css({height:0,overflow:"hidden"}).show();j.toHide.filter(":hidden").each(j.complete).end().filter(":visible").animate(f,{step:function(k,l){if(l.prop=="height"){g=(l.now-l.start)/(l.end-l.start)}j.toShow[0].style[l.prop]=(g*d[l.prop].value)+d[l.prop].unit},duration:j.duration,easing:j.easing,complete:function(){if(!j.autoHeight){j.toShow.css("height","")}j.toShow.css("width",b);j.toShow.css({overflow:c});j.complete()}})},bounceslide:function(b){this.slide(b,{easing:b.down?"easeOutBounce":"swing",duration:b.down?1000:200})},easeslide:function(b){this.slide(b,{easing:"easeinout",duration:700})}}})})(jQuery);;/* - * jQuery UI Dialog 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Dialog - * - * Depends: - * ui.core.js - * ui.draggable.js - * ui.resizable.js - */ (function(c){var b={dragStart:"start.draggable",drag:"drag.draggable",dragStop:"stop.draggable",maxHeight:"maxHeight.resizable",minHeight:"minHeight.resizable",maxWidth:"maxWidth.resizable",minWidth:"minWidth.resizable",resizeStart:"start.resizable",resize:"drag.resizable",resizeStop:"stop.resizable"},a="ui-dialog ui-widget ui-widget-content ui-corner-all ";c.widget("ui.dialog",{_init:function(){this.originalTitle=this.element.attr("title");var l=this,m=this.options,j=m.title||this.originalTitle||" ",e=c.ui.dialog.getTitleId(this.element),k=(this.uiDialog=c("
")).appendTo(document.body).hide().addClass(a+m.dialogClass).css({position:"absolute",overflow:"hidden",zIndex:m.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(n){(m.closeOnEscape&&n.keyCode&&n.keyCode==c.ui.keyCode.ESCAPE&&l.close(n))}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(n){l.moveToTop(false,n)}),g=this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(k),f=(this.uiDialogTitlebar=c("
")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(k),i=c('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){i.addClass("ui-state-hover")},function(){i.removeClass("ui-state-hover")}).focus(function(){i.addClass("ui-state-focus")}).blur(function(){i.removeClass("ui-state-focus")}).mousedown(function(n){n.stopPropagation()}).click(function(n){l.close(n);return false}).appendTo(f),h=(this.uiDialogTitlebarCloseText=c("")).addClass("ui-icon ui-icon-closethick").text(m.closeText).appendTo(i),d=c("").addClass("ui-dialog-title").attr("id",e).html(j).prependTo(f);f.find("*").add(f).disableSelection();(m.draggable&&c.fn.draggable&&this._makeDraggable());(m.resizable&&c.fn.resizable&&this._makeResizable());this._createButtons(m.buttons);this._isOpen=false;(m.bgiframe&&c.fn.bgiframe&&k.bgiframe());(m.autoOpen&&this.open())},destroy:function(){(this.overlay&&this.overlay.destroy());this.uiDialog.hide();this.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");this.uiDialog.remove();(this.originalTitle&&this.element.attr("title",this.originalTitle))},close:function(e){var d=this;if(false===d._trigger("beforeclose",e)){return}(d.overlay&&d.overlay.destroy());d.uiDialog.unbind("keypress.ui-dialog");(d.options.hide?d.uiDialog.hide(d.options.hide,function(){d._trigger("close",e)}):d.uiDialog.hide()&&d._trigger("close",e));c.ui.dialog.overlay.resize();d._isOpen=false},isOpen:function(){return this._isOpen},moveToTop:function(f,e){if((this.options.modal&&!f)||(!this.options.stack&&!this.options.modal)){return this._trigger("focus",e)}if(this.options.zIndex>c.ui.dialog.maxZ){c.ui.dialog.maxZ=this.options.zIndex}(this.overlay&&this.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=++c.ui.dialog.maxZ));var d={scrollTop:this.element.attr("scrollTop"),scrollLeft:this.element.attr("scrollLeft")};this.uiDialog.css("z-index",++c.ui.dialog.maxZ);this.element.attr(d);this._trigger("focus",e)},open:function(){if(this._isOpen){return}var e=this.options,d=this.uiDialog;this.overlay=e.modal?new c.ui.dialog.overlay(this):null;(d.next().length&&d.appendTo("body"));this._size();this._position(e.position);d.show(e.show);this.moveToTop(true);(e.modal&&d.bind("keypress.ui-dialog",function(h){if(h.keyCode!=c.ui.keyCode.TAB){return}var g=c(":tabbable",this),i=g.filter(":first")[0],f=g.filter(":last")[0];if(h.target==f&&!h.shiftKey){setTimeout(function(){i.focus()},1)}else{if(h.target==i&&h.shiftKey){setTimeout(function(){f.focus()},1)}}}));c([]).add(d.find(".ui-dialog-content :tabbable:first")).add(d.find(".ui-dialog-buttonpane :tabbable:first")).add(d).filter(":first").focus();this._trigger("open");this._isOpen=true},_createButtons:function(g){var f=this,d=false,e=c("
").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix");this.uiDialog.find(".ui-dialog-buttonpane").remove();(typeof g=="object"&&g!==null&&c.each(g,function(){return !(d=true)}));if(d){c.each(g,function(h,i){c('').addClass("ui-state-default ui-corner-all").text(h).click(function(){i.apply(f.element[0],arguments)}).hover(function(){c(this).addClass("ui-state-hover")},function(){c(this).removeClass("ui-state-hover")}).focus(function(){c(this).addClass("ui-state-focus")}).blur(function(){c(this).removeClass("ui-state-focus")}).appendTo(e)});e.appendTo(this.uiDialog)}},_makeDraggable:function(){var d=this,f=this.options,e;this.uiDialog.draggable({cancel:".ui-dialog-content",handle:".ui-dialog-titlebar",containment:"document",start:function(){e=f.height;c(this).height(c(this).height()).addClass("ui-dialog-dragging");(f.dragStart&&f.dragStart.apply(d.element[0],arguments))},drag:function(){(f.drag&&f.drag.apply(d.element[0],arguments))},stop:function(){c(this).removeClass("ui-dialog-dragging").height(e);(f.dragStop&&f.dragStop.apply(d.element[0],arguments));c.ui.dialog.overlay.resize()}})},_makeResizable:function(g){g=(g===undefined?this.options.resizable:g);var d=this,f=this.options,e=typeof g=="string"?g:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",alsoResize:this.element,maxWidth:f.maxWidth,maxHeight:f.maxHeight,minWidth:f.minWidth,minHeight:f.minHeight,start:function(){c(this).addClass("ui-dialog-resizing");(f.resizeStart&&f.resizeStart.apply(d.element[0],arguments))},resize:function(){(f.resize&&f.resize.apply(d.element[0],arguments))},handles:e,stop:function(){c(this).removeClass("ui-dialog-resizing");f.height=c(this).height();f.width=c(this).width();(f.resizeStop&&f.resizeStop.apply(d.element[0],arguments));c.ui.dialog.overlay.resize()}}).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_position:function(i){var e=c(window),f=c(document),g=f.scrollTop(),d=f.scrollLeft(),h=g;if(c.inArray(i,["center","top","right","bottom","left"])>=0){i=[i=="right"||i=="left"?i:"center",i=="top"||i=="bottom"?i:"middle"]}if(i.constructor!=Array){i=["center","middle"]}if(i[0].constructor==Number){d+=i[0]}else{switch(i[0]){case"left":d+=0;break;case"right":d+=e.width()-this.uiDialog.outerWidth();break;default:case"center":d+=(e.width()-this.uiDialog.outerWidth())/2}}if(i[1].constructor==Number){g+=i[1]}else{switch(i[1]){case"top":g+=0;break;case"bottom":g+=e.height()-this.uiDialog.outerHeight();break;default:case"middle":g+=(e.height()-this.uiDialog.outerHeight())/2}}g=Math.max(g,h);this.uiDialog.css({top:g,left:d})},_setData:function(e,f){(b[e]&&this.uiDialog.data(b[e],f));switch(e){case"buttons":this._createButtons(f);break;case"closeText":this.uiDialogTitlebarCloseText.text(f);break;case"dialogClass":this.uiDialog.removeClass(this.options.dialogClass).addClass(a+f);break;case"draggable":(f?this._makeDraggable():this.uiDialog.draggable("destroy"));break;case"height":this.uiDialog.height(f);break;case"position":this._position(f);break;case"resizable":var d=this.uiDialog,g=this.uiDialog.is(":data(resizable)");(g&&!f&&d.resizable("destroy"));(g&&typeof f=="string"&&d.resizable("option","handles",f));(g||this._makeResizable(f));break;case"title":c(".ui-dialog-title",this.uiDialogTitlebar).html(f||" ");break;case"width":this.uiDialog.width(f);break}c.widget.prototype._setData.apply(this,arguments)},_size:function(){var e=this.options;this.element.css({height:0,minHeight:0,width:"auto"});var d=this.uiDialog.css({height:"auto",width:e.width}).height();this.element.css({minHeight:Math.max(e.minHeight-d,0),height:e.height=="auto"?"auto":Math.max(e.height-d,0)})}});c.extend(c.ui.dialog,{version:"1.7",defaults:{autoOpen:true,bgiframe:false,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,position:"center",resizable:true,show:null,stack:true,title:"",width:300,zIndex:1000},getter:"isOpen",uuid:0,maxZ:0,getTitleId:function(d){return"ui-dialog-title-"+(d.attr("id")||++this.uuid)},overlay:function(d){this.$el=c.ui.dialog.overlay.create(d)}});c.extend(c.ui.dialog.overlay,{instances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(d){return d+".dialog-overlay"}).join(" "),create:function(e){if(this.instances.length===0){setTimeout(function(){c(document).bind(c.ui.dialog.overlay.events,function(f){var g=c(f.target).parents(".ui-dialog").css("zIndex")||0;return(g>c.ui.dialog.overlay.maxZ)})},1);c(document).bind("keydown.dialog-overlay",function(f){(e.options.closeOnEscape&&f.keyCode&&f.keyCode==c.ui.keyCode.ESCAPE&&e.close(f))});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var d=c("
").appendTo(document.body).addClass("ui-widget-overlay").css({width:this.width(),height:this.height()});(e.options.bgiframe&&c.fn.bgiframe&&d.bgiframe());this.instances.push(d);return d},destroy:function(d){this.instances.splice(c.inArray(this.instances,d),1);if(this.instances.length===0){c([document,window]).unbind(".dialog-overlay")}d.remove()},height:function(){if(c.browser.msie&&c.browser.version<7){var e=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);var d=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);if(e
");if(!c.values){c.values=[this._valueMin(),this._valueMin()]}if(c.values.length&&c.values.length!=2){c.values=[c.values[0],c.values[0]]}}else{this.range=a("
")}this.range.appendTo(this.element).addClass("ui-slider-range");if(c.range=="min"||c.range=="max"){this.range.addClass("ui-slider-range-"+c.range)}this.range.addClass("ui-widget-header")}if(a(".ui-slider-handle",this.element).length==0){a('
').appendTo(this.element).addClass("ui-slider-handle")}if(c.values&&c.values.length){while(a(".ui-slider-handle",this.element).length').appendTo(this.element).addClass("ui-slider-handle")}}this.handles=a(".ui-slider-handle",this.element).addClass("ui-state-default ui-corner-all");this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(d){d.preventDefault()}).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){a(".ui-slider .ui-state-focus").removeClass("ui-state-focus");a(this).addClass("ui-state-focus")}).blur(function(){a(this).removeClass("ui-state-focus")});this.handles.each(function(d){a(this).data("index.ui-slider-handle",d)});this.handles.keydown(function(i){var f=true;var e=a(this).data("index.ui-slider-handle");if(b.options.disabled){return}switch(i.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:f=false;if(!b._keySliding){b._keySliding=true;a(this).addClass("ui-state-active");b._start(i,e)}break}var g,d,h=b._step();if(b.options.values&&b.options.values.length){g=d=b.values(e)}else{g=d=b.value()}switch(i.keyCode){case a.ui.keyCode.HOME:d=b._valueMin();break;case a.ui.keyCode.END:d=b._valueMax();break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(g==b._valueMax()){return}d=g+h;break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(g==b._valueMin()){return}d=g-h;break}b._slide(i,e,d);return f}).keyup(function(e){var d=a(this).data("index.ui-slider-handle");if(b._keySliding){b._stop(e,d);b._change(e,d);b._keySliding=false;a(this).removeClass("ui-state-active")}});this._refreshValue()},destroy:function(){this.handles.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()},_mouseCapture:function(d){var e=this.options;if(e.disabled){return false}this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();var h={x:d.pageX,y:d.pageY};var j=this._normValueFromMouse(h);var c=this._valueMax()+1,f;var k=this,i;this.handles.each(function(l){var m=Math.abs(j-k.values(l));if(c>m){c=m;f=a(this);i=l}});if(e.range==true&&this.values(1)==e.min){f=a(this.handles[++i])}this._start(d,i);k._handleIndex=i;f.addClass("ui-state-active").focus();var g=f.offset();var b=!a(d.target).parents().andSelf().is(".ui-slider-handle");this._clickOffset=b?{left:0,top:0}:{left:d.pageX-g.left-(f.width()/2),top:d.pageY-g.top-(f.height()/2)-(parseInt(f.css("borderTopWidth"),10)||0)-(parseInt(f.css("borderBottomWidth"),10)||0)+(parseInt(f.css("marginTop"),10)||0)};j=this._normValueFromMouse(h);this._slide(d,i,j);return true},_mouseStart:function(b){return true},_mouseDrag:function(d){var b={x:d.pageX,y:d.pageY};var c=this._normValueFromMouse(b);this._slide(d,this._handleIndex,c);return false},_mouseStop:function(b){this.handles.removeClass("ui-state-active");this._stop(b,this._handleIndex);this._change(b,this._handleIndex);this._handleIndex=null;this._clickOffset=null;return false},_detectOrientation:function(){this.orientation=this.options.orientation=="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(d){var c,h;if("horizontal"==this.orientation){c=this.elementSize.width;h=d.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{c=this.elementSize.height;h=d.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}var f=(h/c);if(f>1){f=1}if(f<0){f=0}if("vertical"==this.orientation){f=1-f}var e=this._valueMax()-this._valueMin(),i=f*e,b=i%this.options.step,g=this._valueMin()+i-b;if(b>(this.options.step/2)){g+=this.options.step}return parseFloat(g.toFixed(5))},_start:function(c,b){this._trigger("start",c,this._uiHash(b))},_slide:function(f,e,d){var g=this.handles[e];if(this.options.values&&this.options.values.length){var b=this.values(e?0:1);if((e==0&&d>=b)||(e==1&&d<=b)){d=b}if(d!=this.values(e)){var c=this.values();c[e]=d;var h=this._trigger("slide",f,this._uiHash(e,d,c));var b=this.values(e?0:1);if(h!==false){this.values(e,d,(f.type=="mousedown"&&this.options.animate),true)}}}else{if(d!=this.value()){var h=this._trigger("slide",f,this._uiHash(e,d));if(h!==false){this._setData("value",d,(f.type=="mousedown"&&this.options.animate))}}}},_stop:function(c,b){this._trigger("stop",c,this._uiHash(b))},_change:function(c,b){this._trigger("change",c,this._uiHash(b))},value:function(b){if(arguments.length){this._setData("value",b);this._change(null,0)}return this._value()},values:function(b,e,c,d){if(arguments.length>1){this.options.values[b]=e;this._refreshValue(c);if(!d){this._change(null,b)}}if(arguments.length){if(this.options.values&&this.options.values.length){return this._values(b)}else{return this.value()}}else{return this._values()}},_setData:function(b,d,c){a.widget.prototype._setData.apply(this,arguments);switch(b){case"orientation":this._detectOrientation();this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue(c);break;case"value":this._refreshValue(c);break}},_step:function(){var b=this.options.step;return b},_value:function(){var b=this.options.value;if(bthis._valueMax()){b=this._valueMax()}return b},_values:function(b){if(arguments.length){var c=this.options.values[b];if(cthis._valueMax()){c=this._valueMax()}return c}else{return this.options.values}},_valueMin:function(){var b=this.options.min;return b},_valueMax:function(){var b=this.options.max;return b},_refreshValue:function(c){var f=this.options.range,d=this.options,l=this;if(this.options.values&&this.options.values.length){var i,h;this.handles.each(function(p,n){var o=(l.values(p)-l._valueMin())/(l._valueMax()-l._valueMin())*100;var m={};m[l.orientation=="horizontal"?"left":"bottom"]=o+"%";a(this).stop(1,1)[c?"animate":"css"](m,d.animate);if(l.options.range===true){if(l.orientation=="horizontal"){(p==0)&&l.range.stop(1,1)[c?"animate":"css"]({left:o+"%"},d.animate);(p==1)&&l.range[c?"animate":"css"]({width:(o-lastValPercent)+"%"},{queue:false,duration:d.animate})}else{(p==0)&&l.range.stop(1,1)[c?"animate":"css"]({bottom:(o)+"%"},d.animate);(p==1)&&l.range[c?"animate":"css"]({height:(o-lastValPercent)+"%"},{queue:false,duration:d.animate})}}lastValPercent=o})}else{var j=this.value(),g=this._valueMin(),k=this._valueMax(),e=k!=g?(j-g)/(k-g)*100:0;var b={};b[l.orientation=="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[c?"animate":"css"](b,d.animate);(f=="min")&&(this.orientation=="horizontal")&&this.range.stop(1,1)[c?"animate":"css"]({width:e+"%"},d.animate);(f=="max")&&(this.orientation=="horizontal")&&this.range[c?"animate":"css"]({width:(100-e)+"%"},{queue:false,duration:d.animate});(f=="min")&&(this.orientation=="vertical")&&this.range.stop(1,1)[c?"animate":"css"]({height:e+"%"},d.animate);(f=="max")&&(this.orientation=="vertical")&&this.range[c?"animate":"css"]({height:(100-e)+"%"},{queue:false,duration:d.animate})}},_uiHash:function(d,e,c){var b=this.options.values&&this.options.values.length;return{handle:this.handles[d],value:e||(b?this.values(d):this.value()),values:c||(b&&this.values())}}}));a.extend(a.ui.slider,{getter:"value values",version:"1.7",eventPrefix:"slide",defaults:{animate:false,delay:0,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null}})})(jQuery);;/* - * jQuery UI Tabs 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Tabs - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.tabs",{_init:function(){if(this.options.deselectable!==undefined){this.options.collapsible=this.options.deselectable}this._tabify(true)},_setData:function(b,c){if(b=="selected"){if(this.options.collapsible&&c==this.options.selected){return}this.select(c)}else{this.options[b]=c;if(b=="deselectable"){this.options.collapsible=c}this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^A-Za-z0-9\-_:\.]/g,"")||this.options.idPrefix+a.data(b)},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+a.data(this.list[0]));return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(c,b){return{tab:c,panel:b,index:this.anchors.index(c)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(n){this.list=this.element.children("ul:first");this.lis=a("li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return a("a",this)[0]});this.panels=a([]);var p=this,d=this.options;var c=/^#.+/;this.anchors.each(function(r,o){var q=a(o).attr("href");var s=q.split("#")[0],u;if(s&&(s===location.toString().split("#")[0]||(u=a("base")[0])&&s===u.href)){q=o.hash;o.href=q}if(c.test(q)){p.panels=p.panels.add(p._sanitizeSelector(q))}else{if(q!="#"){a.data(o,"href.tabs",q);a.data(o,"load.tabs",q.replace(/#.*$/,""));var w=p._tabId(o);o.href="#"+w;var v=a("#"+w);if(!v.length){v=a(d.panelTemplate).attr("id",w).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(p.panels[r-1]||p.list);v.data("destroy.tabs",true)}p.panels=p.panels.add(v)}else{d.disabled.push(r)}}});if(n){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(d.selected===undefined){if(location.hash){this.anchors.each(function(q,o){if(o.hash==location.hash){d.selected=q;return false}})}if(typeof d.selected!="number"&&d.cookie){d.selected=parseInt(p._cookie(),10)}if(typeof d.selected!="number"&&this.lis.filter(".ui-tabs-selected").length){d.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}d.selected=d.selected||0}else{if(d.selected===null){d.selected=-1}}d.selected=((d.selected>=0&&this.anchors[d.selected])||d.selected<0)?d.selected:0;d.disabled=a.unique(d.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(q,o){return p.lis.index(q)}))).sort();if(a.inArray(d.selected,d.disabled)!=-1){d.disabled.splice(a.inArray(d.selected,d.disabled),1)}this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");if(d.selected>=0&&this.anchors.length){this.panels.eq(d.selected).removeClass("ui-tabs-hide");this.lis.eq(d.selected).addClass("ui-tabs-selected ui-state-active");p.element.queue("tabs",function(){p._trigger("show",null,p._ui(p.anchors[d.selected],p.panels[d.selected]))});this.load(d.selected)}a(window).bind("unload",function(){p.lis.add(p.anchors).unbind(".tabs");p.lis=p.anchors=p.panels=null})}else{d.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}this.element[d.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");if(d.cookie){this._cookie(d.selected,d.cookie)}for(var g=0,m;(m=this.lis[g]);g++){a(m)[a.inArray(g,d.disabled)!=-1&&!a(m).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled")}if(d.cache===false){this.anchors.removeData("cache.tabs")}this.lis.add(this.anchors).unbind(".tabs");if(d.event!="mouseover"){var f=function(o,i){if(i.is(":not(.ui-state-disabled)")){i.addClass("ui-state-"+o)}};var j=function(o,i){i.removeClass("ui-state-"+o)};this.lis.bind("mouseover.tabs",function(){f("hover",a(this))});this.lis.bind("mouseout.tabs",function(){j("hover",a(this))});this.anchors.bind("focus.tabs",function(){f("focus",a(this).closest("li"))});this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var b,h;if(d.fx){if(a.isArray(d.fx)){b=d.fx[0];h=d.fx[1]}else{b=h=d.fx}}function e(i,o){i.css({display:""});if(a.browser.msie&&o.opacity){i[0].style.removeAttribute("filter")}}var k=h?function(i,o){a(i).closest("li").removeClass("ui-state-default").addClass("ui-tabs-selected ui-state-active");o.hide().removeClass("ui-tabs-hide").animate(h,h.duration||"normal",function(){e(o,h);p._trigger("show",null,p._ui(i,o[0]))})}:function(i,o){a(i).closest("li").removeClass("ui-state-default").addClass("ui-tabs-selected ui-state-active");o.removeClass("ui-tabs-hide");p._trigger("show",null,p._ui(i,o[0]))};var l=b?function(o,i){i.animate(b,b.duration||"normal",function(){p.lis.removeClass("ui-tabs-selected ui-state-active").addClass("ui-state-default");i.addClass("ui-tabs-hide");e(i,b);p.element.dequeue("tabs")})}:function(o,i,q){p.lis.removeClass("ui-tabs-selected ui-state-active").addClass("ui-state-default");i.addClass("ui-tabs-hide");p.element.dequeue("tabs")};this.anchors.bind(d.event+".tabs",function(){var o=this,r=a(this).closest("li"),i=p.panels.filter(":not(.ui-tabs-hide)"),q=a(p._sanitizeSelector(this.hash));if((r.hasClass("ui-tabs-selected")&&!d.collapsible)||r.hasClass("ui-state-disabled")||r.hasClass("ui-state-processing")||p._trigger("select",null,p._ui(this,q[0]))===false){this.blur();return false}d.selected=p.anchors.index(this);p.abort();if(d.collapsible){if(r.hasClass("ui-tabs-selected")){d.selected=-1;if(d.cookie){p._cookie(d.selected,d.cookie)}p.element.queue("tabs",function(){l(o,i)}).dequeue("tabs");this.blur();return false}else{if(!i.length){if(d.cookie){p._cookie(d.selected,d.cookie)}p.element.queue("tabs",function(){k(o,q)});p.load(p.anchors.index(this));this.blur();return false}}}if(d.cookie){p._cookie(d.selected,d.cookie)}if(q.length){if(i.length){p.element.queue("tabs",function(){l(o,i)})}p.element.queue("tabs",function(){k(o,q)});p.load(p.anchors.index(this))}else{throw"jQuery UI Tabs: Mismatching fragment identifier."}if(a.browser.msie){this.blur()}});this.anchors.bind("click.tabs",function(){return false})},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 c=a.data(this,"href.tabs");if(c){this.href=c}var d=a(this).unbind(".tabs");a.each(["href","load","cache"],function(e,f){d.removeData(f+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){if(a.data(this,"destroy.tabs")){a(this).remove()}else{a(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"].join(" "))}});if(b.cookie){this._cookie(null,b.cookie)}},add:function(e,d,c){if(c===undefined){c=this.anchors.length}var b=this,g=this.options,i=a(g.tabTemplate.replace(/#\{href\}/g,e).replace(/#\{label\}/g,d)),h=!e.indexOf("#")?e.replace("#",""):this._tabId(a("a",i)[0]);i.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var f=a("#"+h);if(!f.length){f=a(g.panelTemplate).attr("id",h).data("destroy.tabs",true)}f.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(c>=this.lis.length){i.appendTo(this.list);f.appendTo(this.list[0].parentNode)}else{i.insertBefore(this.lis[c]);f.insertBefore(this.panels[c])}g.disabled=a.map(g.disabled,function(k,j){return k>=c?++k:k});this._tabify();if(this.anchors.length==1){i.addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){b._trigger("show",null,b._ui(b.anchors[0],b.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[c],this.panels[c]))},remove:function(b){var d=this.options,e=this.lis.eq(b).remove(),c=this.panels.eq(b).remove();if(e.hasClass("ui-tabs-selected")&&this.anchors.length>1){this.select(b+(b+1=b?--g:g});this._tabify();this._trigger("remove",null,this._ui(e.find("a")[0],c[0]))},enable:function(b){var c=this.options;if(a.inArray(b,c.disabled)==-1){return}this.lis.eq(b).removeClass("ui-state-disabled");c.disabled=a.grep(c.disabled,function(e,d){return e!=b});this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b]))},disable:function(c){var b=this,d=this.options;if(c!=d.selected){this.lis.eq(c).addClass("ui-state-disabled");d.disabled.push(c);d.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[c],this.panels[c]))}},select:function(b){if(typeof b=="string"){b=this.anchors.index(this.anchors.filter("[href$="+b+"]"))}else{if(b===null){b=-1}}if(b==-1&&this.options.collapsible){b=this.options.selected}this.anchors.eq(b).trigger(this.options.event+".tabs")},load:function(e){var c=this,g=this.options,b=this.anchors.eq(e)[0],d=a.data(b,"load.tabs");this.abort();if(!d||this.element.queue("tabs").length!==0&&a.data(b,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(e).addClass("ui-state-processing");if(g.spinner){var f=a("span",b);f.data("label.tabs",f.html()).html(g.spinner)}this.xhr=a.ajax(a.extend({},g.ajaxOptions,{url:d,success:function(i,h){a(c._sanitizeSelector(b.hash)).html(i);c._cleanup();if(g.cache){a.data(b,"cache.tabs",true)}c._trigger("load",null,c._ui(c.anchors[e],c.panels[e]));try{g.ajaxOptions.success(i,h)}catch(j){}c.element.dequeue("tabs")}}))},abort:function(){this.element.queue([]);this.panels.stop(false,true);if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup()},url:function(c,b){this.anchors.eq(c).removeData("cache.tabs").data("load.tabs",b)},length:function(){return this.anchors.length}});a.extend(a.ui.tabs,{version:"1.7",getter:"length",defaults:{ajaxOptions:null,cache:false,cookie:null,collapsible:false,disabled:[],event:"click",fx:null,idPrefix:"ui-tabs-",panelTemplate:"
",spinner:"Loading…",tabTemplate:'
  • #{label}
  • '}});a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(d,f){var b=this,g=this.options;var c=b._rotate||(b._rotate=function(h){clearTimeout(b.rotation);b.rotation=setTimeout(function(){var i=g.selected;b.select(++i')}$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",log:function(){if(this.debug){console.log.apply("",arguments)}},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=="div"||nodeName=="span");if(!target.id){target.id="dp"+(++this.uuid)}var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=="input"){this._connectDatepicker(target,inst)}else{if(inline){this._inlineDatepicker(target,inst)}}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,"\\\\$1");return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('
    '))}},_connectDatepicker:function(target,inst){var input=$(target);if(input.hasClass(this.markerClassName)){return}var appendText=this._get(inst,"appendText");var isRTL=this._get(inst,"isRTL");if(appendText){input[isRTL?"before":"after"](''+appendText+"")}var showOn=this._get(inst,"showOn");if(showOn=="focus"||showOn=="both"){input.focus(this._showDatepicker)}if(showOn=="button"||showOn=="both"){var buttonText=this._get(inst,"buttonText");var buttonImage=this._get(inst,"buttonImage");var trigger=$(this._get(inst,"buttonImageOnly")?$("").addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('').addClass(this._triggerClass).html(buttonImage==""?buttonText:$("").attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?"before":"after"](trigger);trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target){$.datepicker._hideDatepicker()}else{$.datepicker._showDatepicker(target)}return false})}input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst)},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)){return}divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);this._updateAlternate(inst)},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id="dp"+(++this.uuid);this._dialogInput=$('');this._dialogInput.keydown(this._doKeyDown);$("body").append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst)}extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}this._dialogInput.css("left",this._pos[0]+"px").css("top",this._pos[1]+"px");inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI){$.blockUI(this.dpDiv)}$.data(this._dialogInput[0],PROP_NAME,inst);return this},_destroyDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=="input"){$target.siblings("."+this._appendClass).remove().end().siblings("."+this._triggerClass).remove().end().removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress)}else{if(nodeName=="div"||nodeName=="span"){$target.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=false;$target.siblings("button."+this._triggerClass).each(function(){this.disabled=false}).end().siblings("img."+this._triggerClass).css({opacity:"1.0",cursor:""})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().removeClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)})},_disableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=true;$target.siblings("button."+this._triggerClass).each(function(){this.disabled=true}).end().siblings("img."+this._triggerClass).css({opacity:"0.5",cursor:"default"})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().addClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},_isDisabledDatepicker:function(target){if(!target){return false}for(var i=0;i-1)}},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!="input"){input=$("input",input.parentNode)[0]}if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input){return}var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,"beforeShow");extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,"");$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog){input.value=""}if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight}var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop}var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});$.datepicker._updateDatepicker(inst);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?"static":(isFixed?"fixed":"absolute")),display:"none",left:offset.left+"px",top:offset.top+"px"});if(!inst.inline){var showAnim=$.datepicker._get(inst,"showAnim")||"show";var duration=$.datepicker._get(inst,"duration");var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7){$("iframe.ui-datepicker-cover").css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4})}};if($.effects&&$.effects[showAnim]){inst.dpDiv.show(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[showAnim](duration,postProcess)}if(duration==""){postProcess()}if(inst.input[0].type!="hidden"){inst.input[0].focus()}$.datepicker._curInst=inst}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};var self=this;inst.dpDiv.empty().append(this._generateHTML(inst)).find("iframe.ui-datepicker-cover").css({width:dims.width,height:dims.height}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){$(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).removeClass("ui-datepicker-next-hover")}}).bind("mouseover",function(){if(!self._isDisabledDatepicker(inst.inline?inst.dpDiv.parent()[0]:inst.input[0])){$(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");$(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).addClass("ui-datepicker-next-hover")}}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();var numMonths=this._getNumberOfMonths(inst);var cols=numMonths[1];var width=17;if(cols>1){inst.dpDiv.addClass("ui-datepicker-multi-"+cols).css("width",(width*cols)+"em")}else{inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("")}inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");inst.dpDiv[(this._get(inst,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(inst.input&&inst.input[0].type!="hidden"&&inst==$.datepicker._curInst){$(inst.input[0]).focus()}},_checkOffset:function(inst,offset,isFixed){var dpWidth=inst.dpDiv.outerWidth();var dpHeight=inst.dpDiv.outerHeight();var inputWidth=inst.input?inst.input.outerWidth():0;var inputHeight=inst.input?inst.input.outerHeight():0;var viewWidth=(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)+$(document).scrollLeft();var viewHeight=(window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight)+$(document).scrollTop();offset.left-=(this._get(inst,"isRTL")?(dpWidth-inputWidth):0);offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;offset.left-=(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?Math.abs(offset.left+dpWidth-viewWidth):0;offset.top-=(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?Math.abs(offset.top+dpHeight+inputHeight*2-viewHeight):0;return offset},_findPos:function(obj){while(obj&&(obj.type=="hidden"||obj.nodeType!=1)){obj=obj.nextSibling}var position=$(obj).offset();return[position.left,position.top]},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))){return}if(inst.stayOpen){this._selectDate("#"+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear))}inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,"duration"));var showAnim=this._get(inst,"showAnim");var postProcess=function(){$.datepicker._tidyDialog(inst)};if(duration!=""&&$.effects&&$.effects[showAnim]){inst.dpDiv.hide(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[(duration==""?"hide":(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide")))](duration,postProcess)}if(duration==""){this._tidyDialog(inst)}var onClose=this._get(inst,"onClose");if(onClose){onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():""),inst])}this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if($.blockUI){$.unblockUI();$("body").append(this.dpDiv)}}this._inDialog=false}this._curInst=null},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(event){if(!$.datepicker._curInst){return}var $target=$(event.target);if(($target.parents("#"+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)){$.datepicker._hideDatepicker(null,"")}},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);if(this._isDisabledDatepicker(target[0])){return}this._adjustInstDate(inst,offset+(period=="M"?this._get(inst,"showCurrentAtPos"):0),period);this._updateDatepicker(inst)},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,"gotoCurrent")&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear}else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear()}this._notifyChange(inst);this._adjustDate(target)},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst["selected"+(period=="M"?"Month":"Year")]=inst["draw"+(period=="M"?"Month":"Year")]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target)},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie){inst.input[0].focus()}inst._selectingMonthYear=!inst._selectingMonthYear},_selectDay:function(id,month,year,td){var target=$(id);if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){return}var inst=this._getInst(target[0]);inst.selectedDay=inst.currentDay=$("a",td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null}this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay));this._updateDatepicker(inst)}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,"")},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(inst.input){inst.input.val(dateStr)}this._updateAlternate(inst);var onSelect=this._get(inst,"onSelect");if(onSelect){onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}else{if(inst.input){inst.input.trigger("change")}}if(inst.inline){this._updateDatepicker(inst)}else{if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,"duration"));this._lastInput=inst.input[0];if(typeof(inst.input[0])!="object"){inst.input[0].focus()}this._lastInput=null}}},_updateAlternate:function(inst){var altField=this._get(inst,"altField");if(altField){var altFormat=this._get(inst,"altFormat")||this._get(inst,"dateFormat");var date=this._getDate(inst);dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));$(altField).each(function(){$(this).val(dateStr)})}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),""]},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate());var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDatenew Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)0&&iValue="0"&&value.charAt(iValue)<="9"){num=num*10+parseInt(value.charAt(iValue++),10);size--}if(size==origSize){throw"Missing number at position "+iValue}return num};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j0&&iValue-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim){break}month++;day-=dim}while(true)}var date=this._daylightSavingAdjust(new Date(year,month-1,day));if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},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",TIMESTAMP:"@",W3C:"yy-mm-dd",formatDate:function(format,date,settings){if(!date){return""}var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1=0;m--){doy+=this._getDaysInMonth(date.getFullYear(),m)}output+=formatNumber("o",doy,3);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(lookAhead("y")?date.getFullYear():(date.getYear()%100<10?"0":"")+date.getYear()%100);break;case"@":output+=date.getTime();break;case"'":if(lookAhead("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}}return output},_possibleChars:function(format){var chars="";var literal=false;for(var iFormat=0;iFormatmaxDate?maxDate:date);return date},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setDate(date.getDate()+offset);return date};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"d"){case"d":case"D":day+=parseInt(matches[1],10);break;case"w":case"W":day+=parseInt(matches[1],10)*7;break;case"m":case"M":month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case"y":case"Y":year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break}matches=pattern.exec(offset)}return new Date(year,month,day)};date=(date==null?defaultDate:(typeof date=="string"?offsetString(date,this._getDaysInMonth):(typeof date=="number"?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));date=(date&&date.toString()=="Invalid Date"?defaultDate:date);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0)}return this._daylightSavingAdjust(date)},_daylightSavingAdjust:function(date){if(!date){return null}date.setHours(date.getHours()>12?date.getHours()+2:0);return date},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear){this._notifyChange(inst)}this._adjustInstDate(inst);if(inst.input){inst.input.val(clear?"":this._formatDate(inst))}},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=="")?null:this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return startDate},_generateHTML:function(inst){var today=new Date();today=this._daylightSavingAdjust(new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,"isRTL");var showButtonPanel=this._get(inst,"showButtonPanel");var hideIfNoPrevNext=this._get(inst,"hideIfNoPrevNext");var navigationAsDateFormat=this._get(inst,"navigationAsDateFormat");var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,"showCurrentAtPos");var stepMonths=this._get(inst,"stepMonths");var stepBigMonths=this._get(inst,"stepBigMonths");var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--}if(maxDate){var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate()));maxDraw=(minDate&&maxDrawmaxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--}}}inst.drawMonth=drawMonth;inst.drawYear=drawYear;var prevText=this._get(inst,"prevText");prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),this._getFormatConfig(inst)));var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?''+prevText+"":(hideIfNoPrevNext?"":''+prevText+""));var nextText=this._get(inst,"nextText");nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),this._getFormatConfig(inst)));var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?''+nextText+"":(hideIfNoPrevNext?"":''+nextText+""));var currentText=this._get(inst,"currentText");var gotoDate=(this._get(inst,"gotoCurrent")&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var controls=(!inst.inline?'":"");var buttonPanel=(showButtonPanel)?'
    '+(isRTL?controls:"")+(this._isInRange(inst,gotoDate)?'":"")+(isRTL?"":controls)+"
    ":"";var firstDay=parseInt(this._get(inst,"firstDay"),10);firstDay=(isNaN(firstDay)?0:firstDay);var dayNames=this._get(inst,"dayNames");var dayNamesShort=this._get(inst,"dayNamesShort");var dayNamesMin=this._get(inst,"dayNamesMin");var monthNames=this._get(inst,"monthNames");var monthNamesShort=this._get(inst,"monthNamesShort");var beforeShowDay=this._get(inst,"beforeShowDay");var showOtherMonths=this._get(inst,"showOtherMonths");var calculateWeek=this._get(inst,"calculateWeek")||this.iso8601Week;var endDate=inst.endDay?this._daylightSavingAdjust(new Date(inst.endYear,inst.endMonth,inst.endDay)):currentDate;var defaultDate=this._getDefaultDate(inst);var html="";for(var row=0;row'+(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):"")+(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):"")+this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,monthNames,monthNamesShort)+'';var thead="";for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;thead+="=5?' class="ui-datepicker-week-end"':"")+'>'+dayNamesMin[day]+""}calender+=thead+"";var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth){inst.selectedDay=Math.min(inst.selectedDay,daysInMonth)}var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));for(var dRow=0;dRow";var tbody="";for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,""]);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDatemaxDate);tbody+='";printDate.setDate(printDate.getDate()+1);printDate=this._daylightSavingAdjust(printDate)}calender+=tbody+""}drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++}calender+="
    =currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" "+this._currentClass:"")+(printDate.getTime()==today.getTime()?" ui-datepicker-today":""))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':"")+(unselectable?"":" onclick=\"DP_jQuery.datepicker._selectDay('#"+inst.id+"',"+drawMonth+","+drawYear+', this);return false;"')+">"+(otherMonth?(showOtherMonths?printDate.getDate():" "):(unselectable?''+printDate.getDate()+"":'=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" ui-state-active":"")+'" href="#">'+printDate.getDate()+""))+"
    "+(isMultiMonth?""+((numMonths[0]>0&&col==numMonths[1]-1)?'
    ':""):"");group+=calender}html+=group}html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?" ":"")}if(secondary||!changeYear){html+=''+drawYear+""}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?" ":"")+monthHtml}html+="";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&datemaxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7";window.DP_jQuery=$})(jQuery);;/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.progressbar",{_init:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this._valueMin(),"aria-valuemax":this._valueMax(),"aria-valuenow":this._value()});this.valueDiv=a('
    ').appendTo(this.element);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").removeData("progressbar").unbind(".progressbar");this.valueDiv.remove();a.widget.prototype.destroy.apply(this,arguments)},value:function(b){arguments.length&&this._setData("value",b);return this._value()},_setData:function(b,c){switch(b){case"value":this.options.value=c;this._refreshValue();this._trigger("change",null,{});break}a.widget.prototype._setData.apply(this,arguments)},_value:function(){var b=this.options.value;if(bthis._valueMax()){b=this._valueMax()}return b},_valueMin:function(){var b=0;return b},_valueMax:function(){var b=100;return b},_refreshValue:function(){var b=this.value();this.valueDiv[b==this._valueMax()?"addClass":"removeClass"]("ui-corner-right");this.valueDiv.width(b+"%");this.element.attr("aria-valuenow",b)}});a.extend(a.ui.progressbar,{version:"1.7",defaults:{value:0}})})(jQuery);;/* - * jQuery UI Effects 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ jQuery.effects||(function(d){d.effects={version:"1.7",save:function(g,h){for(var f=0;f');var j=f.parent();if(f.css("position")=="static"){j.css({position:"relative"});f.css({position:"relative"})}else{var i=f.css("top");if(isNaN(parseInt(i,10))){i="auto"}var h=f.css("left");if(isNaN(parseInt(h,10))){h="auto"}j.css({position:f.css("position"),top:i,left:h,zIndex:f.css("z-index")}).show();f.css({position:"relative",top:0,left:0})}j.css(g);return j},removeWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent().replaceWith(f)}return f},setTransition:function(g,i,f,h){h=h||{};d.each(i,function(k,j){unit=g.cssUnit(j);if(unit[0]>0){h[j]=unit[0]*f+unit[1]}});return h},animateClass:function(h,i,k,j){var f=(typeof k=="function"?k:(j?j:null));var g=(typeof k=="string"?k:null);return this.each(function(){var q={};var o=d(this);var p=o.attr("style")||"";if(typeof p=="object"){p=p.cssText}if(h.toggle){o.hasClass(h.toggle)?h.remove=h.toggle:h.add=h.toggle}var l=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.addClass(h.add)}if(h.remove){o.removeClass(h.remove)}var m=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.removeClass(h.add)}if(h.remove){o.addClass(h.remove)}for(var r in m){if(typeof m[r]!="function"&&m[r]&&r.indexOf("Moz")==-1&&r.indexOf("length")==-1&&m[r]!=l[r]&&(r.match(/color/i)||(!r.match(/color/i)&&!isNaN(parseInt(m[r],10))))&&(l.position!="static"||(l.position=="static"&&!r.match(/left|top|bottom|right/)))){q[r]=m[r]}}o.animate(q,i,g,function(){if(typeof d(this).attr("style")=="object"){d(this).attr("style")["cssText"]="";d(this).attr("style")["cssText"]=p}else{d(this).attr("style",p)}if(h.add){d(this).addClass(h.add)}if(h.remove){d(this).removeClass(h.remove)}if(f){f.apply(this,arguments)}})})}};function c(g,f){var i=g[1]&&g[1].constructor==Object?g[1]:{};if(f){i.mode=f}var h=g[1]&&g[1].constructor!=Object?g[1]:(i.duration?i.duration:g[2]);h=d.fx.off?0:typeof h==="number"?h:d.fx.speeds[h]||d.fx.speeds._default;var j=i.callback||(d.isFunction(g[1])&&g[1])||(d.isFunction(g[2])&&g[2])||(d.isFunction(g[3])&&g[3]);return[g[0],i,h,j]}d.fn.extend({_show:d.fn.show,_hide:d.fn.hide,__toggle:d.fn.toggle,_addClass:d.fn.addClass,_removeClass:d.fn.removeClass,_toggleClass:d.fn.toggleClass,effect:function(g,f,h,i){return d.effects[g]?d.effects[g].call(this,{method:g,options:f||{},duration:h,callback:i}):null},show:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._show.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"show"))}},hide:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._hide.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"hide"))}},toggle:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))||(arguments[0].constructor==Function)){return this.__toggle.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"toggle"))}},addClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{add:g},f,i,h]):this._addClass(g)},removeClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{remove:g},f,i,h]):this._removeClass(g)},toggleClass:function(g,f,i,h){return((typeof f!=="boolean")&&f)?d.effects.animateClass.apply(this,[{toggle:g},f,i,h]):this._toggleClass(g,f)},morph:function(f,h,g,j,i){return d.effects.animateClass.apply(this,[{add:h,remove:f},g,j,i])},switchClass:function(){return this.morph.apply(this,arguments)},cssUnit:function(f){var g=this.css(f),h=[];d.each(["em","px","%","pt"],function(j,k){if(g.indexOf(k)>0){h=[parseFloat(g),k]}});return h}});d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(g,f){d.fx.step[f]=function(h){if(h.state==0){h.start=e(h.elem,f);h.end=b(h.end)}h.elem.style[f]="rgb("+[Math.max(Math.min(parseInt((h.pos*(h.end[0]-h.start[0]))+h.start[0],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[1]-h.start[1]))+h.start[1],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[2]-h.start[2]))+h.start[2],10),255),0)].join(",")+")"}});function b(g){var f;if(g&&g.constructor==Array&&g.length==3){return g}if(f=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(g)){return[parseInt(f[1],10),parseInt(f[2],10),parseInt(f[3],10)]}if(f=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(g)){return[parseFloat(f[1])*2.55,parseFloat(f[2])*2.55,parseFloat(f[3])*2.55]}if(f=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(g)){return[parseInt(f[1],16),parseInt(f[2],16),parseInt(f[3],16)]}if(f=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(g)){return[parseInt(f[1]+f[1],16),parseInt(f[2]+f[2],16),parseInt(f[3]+f[3],16)]}if(f=/rgba\(0, 0, 0, 0\)/.exec(g)){return a.transparent}return a[d.trim(g).toLowerCase()]}function e(h,f){var g;do{g=d.curCSS(h,f);if(g!=""&&g!="transparent"||d.nodeName(h,"body")){break}f="backgroundColor"}while(h=h.parentNode);return b(g)}var a={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]};d.easing.jswing=d.easing.swing;d.extend(d.easing,{def:"easeOutQuad",swing:function(g,h,f,j,i){return d.easing[d.easing.def](g,h,f,j,i)},easeInQuad:function(g,h,f,j,i){return j*(h/=i)*h+f},easeOutQuad:function(g,h,f,j,i){return -j*(h/=i)*(h-2)+f},easeInOutQuad:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h+f}return -j/2*((--h)*(h-2)-1)+f},easeInCubic:function(g,h,f,j,i){return j*(h/=i)*h*h+f},easeOutCubic:function(g,h,f,j,i){return j*((h=h/i-1)*h*h+1)+f},easeInOutCubic:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h+f}return j/2*((h-=2)*h*h+2)+f},easeInQuart:function(g,h,f,j,i){return j*(h/=i)*h*h*h+f},easeOutQuart:function(g,h,f,j,i){return -j*((h=h/i-1)*h*h*h-1)+f},easeInOutQuart:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h+f}return -j/2*((h-=2)*h*h*h-2)+f},easeInQuint:function(g,h,f,j,i){return j*(h/=i)*h*h*h*h+f},easeOutQuint:function(g,h,f,j,i){return j*((h=h/i-1)*h*h*h*h+1)+f},easeInOutQuint:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h*h+f}return j/2*((h-=2)*h*h*h*h+2)+f},easeInSine:function(g,h,f,j,i){return -j*Math.cos(h/i*(Math.PI/2))+j+f},easeOutSine:function(g,h,f,j,i){return j*Math.sin(h/i*(Math.PI/2))+f},easeInOutSine:function(g,h,f,j,i){return -j/2*(Math.cos(Math.PI*h/i)-1)+f},easeInExpo:function(g,h,f,j,i){return(h==0)?f:j*Math.pow(2,10*(h/i-1))+f},easeOutExpo:function(g,h,f,j,i){return(h==i)?f+j:j*(-Math.pow(2,-10*h/i)+1)+f},easeInOutExpo:function(g,h,f,j,i){if(h==0){return f}if(h==i){return f+j}if((h/=i/2)<1){return j/2*Math.pow(2,10*(h-1))+f}return j/2*(-Math.pow(2,-10*--h)+2)+f},easeInCirc:function(g,h,f,j,i){return -j*(Math.sqrt(1-(h/=i)*h)-1)+f},easeOutCirc:function(g,h,f,j,i){return j*Math.sqrt(1-(h=h/i-1)*h)+f},easeInOutCirc:function(g,h,f,j,i){if((h/=i/2)<1){return -j/2*(Math.sqrt(1-h*h)-1)+f}return j/2*(Math.sqrt(1-(h-=2)*h)+1)+f},easeInElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h").css({position:"absolute",visibility:"visible",left:-d*(g/e),top:-f*(c/k)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:g/e,height:c/k,left:l.left+d*(g/e)+(b.options.mode=="show"?(d-Math.floor(e/2))*(g/e):0),top:l.top+f*(c/k)+(b.options.mode=="show"?(f-Math.floor(k/2))*(c/k):0),opacity:b.options.mode=="show"?0:1}).animate({left:l.left+d*(g/e)+(b.options.mode=="show"?0:(d-Math.floor(e/2))*(g/e)),top:l.top+f*(c/k)+(b.options.mode=="show"?0:(f-Math.floor(k/2))*(c/k)),opacity:b.options.mode=="show"?1:0},b.duration||500)}}setTimeout(function(){b.options.mode=="show"?h.css({visibility:"visible"}):h.css({visibility:"visible"}).hide();if(b.callback){b.callback.apply(h[0])}h.dequeue();a("div.ui-effects-explode").remove()},b.duration||500)})}})(jQuery);;/* - * jQuery UI Effects Fold 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Fold - * - * Depends: - * effects.core.js - */ (function(a){a.effects.fold=function(b){return this.queue(function(){var e=a(this),k=["position","top","left"];var h=a.effects.setMode(e,b.options.mode||"hide");var o=b.options.size||15;var n=!(!b.options.horizFirst);var g=b.duration?b.duration/2:a.fx.speeds._default/2;a.effects.save(e,k);e.show();var d=a.effects.createWrapper(e).css({overflow:"hidden"});var i=((h=="show")!=n);var f=i?["width","height"]:["height","width"];var c=i?[d.width(),d.height()]:[d.height(),d.width()];var j=/([0-9]+)%/.exec(o);if(j){o=parseInt(j[1],10)/100*c[h=="hide"?0:1]}if(h=="show"){d.css(n?{height:0,width:o}:{height:o,width:0})}var m={},l={};m[f[0]]=h=="show"?c[0]:o;l[f[1]]=h=="show"?c[1]:0;d.animate(m,g,b.options.easing).animate(l,g,b.options.easing,function(){if(h=="hide"){e.hide()}a.effects.restore(e,k);a.effects.removeWrapper(e);if(b.callback){b.callback.apply(e[0],arguments)}e.dequeue()})})}})(jQuery);;/* - * jQuery UI Effects Highlight 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Highlight - * - * Depends: - * effects.core.js - */ (function(a){a.effects.highlight=function(b){return this.queue(function(){var e=a(this),d=["backgroundImage","backgroundColor","opacity"];var h=a.effects.setMode(e,b.options.mode||"show");var c=b.options.color||"#ffff99";var g=e.css("backgroundColor");a.effects.save(e,d);e.show();e.css({backgroundImage:"none",backgroundColor:c});var f={backgroundColor:g};if(h=="hide"){f.opacity=0}e.animate(f,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){if(h=="hide"){e.hide()}a.effects.restore(e,d);if(h=="show"&&a.browser.msie){this.style.removeAttribute("filter")}if(b.callback){b.callback.apply(this,arguments)}e.dequeue()}})})}})(jQuery);;/* - * jQuery UI Effects Pulsate 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Pulsate - * - * Depends: - * effects.core.js - */ (function(a){a.effects.pulsate=function(b){return this.queue(function(){var d=a(this);var g=a.effects.setMode(d,b.options.mode||"show");var f=b.options.times||5;var e=b.duration?b.duration/2:a.fx.speeds._default/2;if(g=="hide"){f--}if(d.is(":hidden")){d.css("opacity",0);d.show();d.animate({opacity:1},e,b.options.easing);f=f-2}for(var c=0;c').appendTo(document.body).addClass(b.options.className).css({top:d.top,left:d.left,height:f.innerHeight(),width:f.innerWidth(),position:"absolute"}).animate(g,b.duration,b.options.easing,function(){c.remove();(b.callback&&b.callback.apply(f[0],arguments));f.dequeue()})})}})(jQuery);; \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d634..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png deleted file mode 100644 index e65ca12..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png deleted file mode 100644 index 0e05810..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png deleted file mode 100644 index 67560da..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index b2c9052..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png deleted file mode 100644 index 0cd64a2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png deleted file mode 100644 index 2e5180e..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 2db88b7..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.accordion.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.accordion.css deleted file mode 100644 index ee1b1b6..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.accordion.css +++ /dev/null @@ -1,9 +0,0 @@ -/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.all.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.all.css deleted file mode 100644 index 543e4c3..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.all.css +++ /dev/null @@ -1,2 +0,0 @@ -@import "ui.base.css"; -@import "ui.theme.css"; diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.base.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.base.css deleted file mode 100644 index d716095..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.base.css +++ /dev/null @@ -1,8 +0,0 @@ -@import url("ui.core.css"); -@import url("ui.resizable.css"); -@import url("ui.accordion.css"); -@import url("ui.dialog.css"); -@import url("ui.slider.css"); -@import url("ui.tabs.css"); -@import url("ui.datepicker.css"); -@import url("ui.progressbar.css"); \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.core.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.core.css deleted file mode 100644 index c2f18f2..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.core.css +++ /dev/null @@ -1,37 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.datepicker.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.datepicker.css deleted file mode 100644 index 567f8c9..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.datepicker.css +++ /dev/null @@ -1,62 +0,0 @@ -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.dialog.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.dialog.css deleted file mode 100644 index 2997595..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.dialog.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.progressbar.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.progressbar.css deleted file mode 100644 index bc0939e..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.progressbar.css +++ /dev/null @@ -1,4 +0,0 @@ -/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.resizable.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.resizable.css deleted file mode 100644 index 44efeb2..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.resizable.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;} \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.slider.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.slider.css deleted file mode 100644 index 4c56218..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.slider.css +++ /dev/null @@ -1,17 +0,0 @@ -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.tabs.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.tabs.css deleted file mode 100644 index 3ca6b9a..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.tabs.css +++ /dev/null @@ -1,11 +0,0 @@ -/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.theme.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.theme.css deleted file mode 100644 index 6296e4e..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/base/ui.theme.css +++ /dev/null @@ -1,243 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/ -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: /*{ffDefault}*/; font-size: 9pt/*{fsDefault}*/; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: /*{ffDefault}*/; font-size: 9pt; } -.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_glass_75_ffffff_1x400.png)/*{bgImgUrlContent}*/ 0/*{bgContentXPos}*/ 0/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; } -.ui-widget-content a { color: #222222/*{fcContent}*/; } -.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 0/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; } -.ui-widget-header a { color: #222222/*{fcHeader}*/; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 0/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 0/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 0/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 0/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636/*{fcHighlight}*/; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_inset-soft_95_fef1ec_1x100.png)/*{bgImgUrlError}*/ 0/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #363636/*{fcError}*/; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a/*{fcError}*/; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-top { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-right { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-left { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all { -moz-border-radius: 4px/*{cornerRadius}*/; -webkit-border-radius: 4px/*{cornerRadius}*/; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ none/*{bgImgUrlOverlay}*/ 0/*{bgOverlayXPos}*/ 0/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; } -.ui-widget-shadow { margin: -4px/*{offsetTopShadow}*/ 0 0 -4px/*{offsetLeftShadow}*/; padding: 4px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ none/*{bgImgUrlShadow}*/ 0/*{bgShadowXPos}*/ 0/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .35;filter:Alpha(Opacity=35)/*{opacityShadow}*/; -moz-border-radius: 4px/*{cornerRadiusShadow}*/; -webkit-border-radius: 4px/*{cornerRadiusShadow}*/; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index ac8b229..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d634..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index 4443fdc..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png deleted file mode 100644 index 67560da..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index b425c44..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png deleted file mode 100644 index 0cd64a2..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png deleted file mode 100644 index 2e5180e..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 2db88b7..0000000 Binary files a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css deleted file mode 100644 index b2d67e2..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css +++ /dev/null @@ -1,405 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; } -.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; }/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; }/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -}/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css deleted file mode 100644 index ee1b1b6..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css +++ /dev/null @@ -1,9 +0,0 @@ -/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.all.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.all.css deleted file mode 100644 index 543e4c3..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.all.css +++ /dev/null @@ -1,2 +0,0 @@ -@import "ui.base.css"; -@import "ui.theme.css"; diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.base.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.base.css deleted file mode 100644 index d716095..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.base.css +++ /dev/null @@ -1,8 +0,0 @@ -@import url("ui.core.css"); -@import url("ui.resizable.css"); -@import url("ui.accordion.css"); -@import url("ui.dialog.css"); -@import url("ui.slider.css"); -@import url("ui.tabs.css"); -@import url("ui.datepicker.css"); -@import url("ui.progressbar.css"); \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.core.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.core.css deleted file mode 100644 index c2f18f2..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.core.css +++ /dev/null @@ -1,37 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css deleted file mode 100644 index 567f8c9..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css +++ /dev/null @@ -1,62 +0,0 @@ -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css deleted file mode 100644 index 2997595..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css deleted file mode 100644 index bc0939e..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css +++ /dev/null @@ -1,4 +0,0 @@ -/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css deleted file mode 100644 index 44efeb2..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;} \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.slider.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.slider.css deleted file mode 100644 index 4c56218..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.slider.css +++ /dev/null @@ -1,17 +0,0 @@ -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css deleted file mode 100644 index 3ca6b9a..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css +++ /dev/null @@ -1,11 +0,0 @@ -/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.theme.css b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.theme.css deleted file mode 100644 index 10f76b4..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/themes/smoothness/ui.theme.css +++ /dev/null @@ -1,245 +0,0 @@ - - -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; } -.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; } \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.accordion.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.accordion.js deleted file mode 100644 index fc71ecf..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.accordion.js +++ /dev/null @@ -1,477 +0,0 @@ -/* - * jQuery UI Accordion 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Accordion - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.accordion", { - - _init: function() { - - var o = this.options, self = this; - this.running = 0; - - // if the user set the alwaysOpen option on init - // then we need to set the collapsible option - // if they set both on init, collapsible will take priority - if (o.collapsible == $.ui.accordion.defaults.collapsible && - o.alwaysOpen != $.ui.accordion.defaults.alwaysOpen) { - o.collapsible = !o.alwaysOpen; - } - - if ( o.navigation ) { - var current = this.element.find("a").filter(o.navigationFilter); - if ( current.length ) { - if ( current.filter(o.header).length ) { - this.active = current; - } else { - this.active = current.parent().parent().prev(); - current.addClass("ui-accordion-content-active"); - } - } - } - - this.element.addClass("ui-accordion ui-widget ui-helper-reset"); - - // in lack of child-selectors in CSS we need to mark top-LIs in a UL-accordion for some IE-fix - if (this.element[0].nodeName == "UL") { - this.element.children("li").addClass("ui-accordion-li-fix"); - } - - this.headers = this.element.find(o.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all") - .bind("mouseenter.accordion", function(){ $(this).addClass('ui-state-hover'); }) - .bind("mouseleave.accordion", function(){ $(this).removeClass('ui-state-hover'); }) - .bind("focus.accordion", function(){ $(this).addClass('ui-state-focus'); }) - .bind("blur.accordion", function(){ $(this).removeClass('ui-state-focus'); }); - - this.headers - .next() - .addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom"); - - this.active = this._findActive(this.active || o.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"); - this.active.next().addClass('ui-accordion-content-active'); - - //Append icon elements - $("").addClass("ui-icon " + o.icons.header).prependTo(this.headers); - this.active.find(".ui-icon").toggleClass(o.icons.header).toggleClass(o.icons.headerSelected); - - // IE7-/Win - Extra vertical space in lists fixed - if ($.browser.msie) { - this.element.find('a').css('zoom', '1'); - } - - this.resize(); - - //ARIA - this.element.attr('role','tablist'); - - this.headers - .attr('role','tab') - .bind('keydown', function(event) { return self._keydown(event); }) - .next() - .attr('role','tabpanel'); - - this.headers - .not(this.active || "") - .attr('aria-expanded','false') - .attr("tabIndex", "-1") - .next() - .hide(); - - // make sure at least one header is in the tab order - if (!this.active.length) { - this.headers.eq(0).attr('tabIndex','0'); - } else { - this.active - .attr('aria-expanded','true') - .attr('tabIndex', '0'); - } - - // only need links in taborder for Safari - if (!$.browser.safari) - this.headers.find('a').attr('tabIndex','-1'); - - if (o.event) { - this.headers.bind((o.event) + ".accordion", function(event) { return self._clickHandler.call(self, event, this); }); - } - - }, - - destroy: function() { - var o = this.options; - - this.element - .removeClass("ui-accordion ui-widget ui-helper-reset") - .removeAttr("role") - .unbind('.accordion') - .removeData('accordion'); - - this.headers - .unbind(".accordion") - .removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top") - .removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex"); - - this.headers.find("a").removeAttr("tabindex"); - this.headers.children(".ui-icon").remove(); - var contents = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active"); - if (o.autoHeight || o.fillHeight) { - contents.css("height", ""); - } - }, - - _setData: function(key, value) { - if(key == 'alwaysOpen') { key = 'collapsible'; value = !value; } - $.widget.prototype._setData.apply(this, arguments); - }, - - _keydown: function(event) { - - var o = this.options, keyCode = $.ui.keyCode; - - if (o.disabled || event.altKey || event.ctrlKey) - return; - - var length = this.headers.length; - var currentIndex = this.headers.index(event.target); - var toFocus = false; - - switch(event.keyCode) { - case keyCode.RIGHT: - case keyCode.DOWN: - toFocus = this.headers[(currentIndex + 1) % length]; - break; - case keyCode.LEFT: - case keyCode.UP: - toFocus = this.headers[(currentIndex - 1 + length) % length]; - break; - case keyCode.SPACE: - case keyCode.ENTER: - return this._clickHandler({ target: event.target }, event.target); - } - - if (toFocus) { - $(event.target).attr('tabIndex','-1'); - $(toFocus).attr('tabIndex','0'); - toFocus.focus(); - return false; - } - - return true; - - }, - - resize: function() { - - var o = this.options, maxHeight; - - if (o.fillSpace) { - - if($.browser.msie) { var defOverflow = this.element.parent().css('overflow'); this.element.parent().css('overflow', 'hidden'); } - maxHeight = this.element.parent().height(); - if($.browser.msie) { this.element.parent().css('overflow', defOverflow); } - - this.headers.each(function() { - maxHeight -= $(this).outerHeight(); - }); - - var maxPadding = 0; - this.headers.next().each(function() { - maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height()); - }).height(Math.max(0, maxHeight - maxPadding)) - .css('overflow', 'auto'); - - } else if ( o.autoHeight ) { - maxHeight = 0; - this.headers.next().each(function() { - maxHeight = Math.max(maxHeight, $(this).outerHeight()); - }).height(maxHeight); - } - - }, - - activate: function(index) { - // call clickHandler with custom event - var active = this._findActive(index)[0]; - this._clickHandler({ target: active }, active); - }, - - _findActive: function(selector) { - return selector - ? typeof selector == "number" - ? this.headers.filter(":eq(" + selector + ")") - : this.headers.not(this.headers.not(selector)) - : selector === false - ? $([]) - : this.headers.filter(":eq(0)"); - }, - - _clickHandler: function(event, target) { - - var o = this.options; - if (o.disabled) return false; - - // called only when using activate(false) to close all parts programmatically - if (!event.target && o.collapsible) { - this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all") - .find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header); - this.active.next().addClass('ui-accordion-content-active'); - var toHide = this.active.next(), - data = { - options: o, - newHeader: $([]), - oldHeader: o.active, - newContent: $([]), - oldContent: toHide - }, - toShow = (this.active = $([])); - this._toggle(toShow, toHide, data); - return false; - } - - // get the click target - var clicked = $(event.currentTarget || target); - var clickedIsActive = clicked[0] == this.active[0]; - - // if animations are still active, or the active header is the target, ignore click - if (this.running || (!o.collapsible && clickedIsActive)) { - return false; - } - - // switch classes - this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all") - .find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header); - this.active.next().addClass('ui-accordion-content-active'); - if (!clickedIsActive) { - clicked.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top") - .find(".ui-icon").removeClass(o.icons.header).addClass(o.icons.headerSelected); - clicked.next().addClass('ui-accordion-content-active'); - } - - // find elements to show and hide - var toShow = clicked.next(), - toHide = this.active.next(), - data = { - options: o, - newHeader: clickedIsActive && o.collapsible ? $([]) : clicked, - oldHeader: this.active, - newContent: clickedIsActive && o.collapsible ? $([]) : toShow.find('> *'), - oldContent: toHide.find('> *') - }, - down = this.headers.index( this.active[0] ) > this.headers.index( clicked[0] ); - - this.active = clickedIsActive ? $([]) : clicked; - this._toggle(toShow, toHide, data, clickedIsActive, down); - - return false; - - }, - - _toggle: function(toShow, toHide, data, clickedIsActive, down) { - - var o = this.options, self = this; - - this.toShow = toShow; - this.toHide = toHide; - this.data = data; - - var complete = function() { if(!self) return; return self._completed.apply(self, arguments); }; - - // trigger changestart event - this._trigger("changestart", null, this.data); - - // count elements to animate - this.running = toHide.size() === 0 ? toShow.size() : toHide.size(); - - if (o.animated) { - - var animOptions = {}; - - if ( o.collapsible && clickedIsActive ) { - animOptions = { - toShow: $([]), - toHide: toHide, - complete: complete, - down: down, - autoHeight: o.autoHeight || o.fillSpace - }; - } else { - animOptions = { - toShow: toShow, - toHide: toHide, - complete: complete, - down: down, - autoHeight: o.autoHeight || o.fillSpace - }; - } - - if (!o.proxied) { - o.proxied = o.animated; - } - - if (!o.proxiedDuration) { - o.proxiedDuration = o.duration; - } - - o.animated = $.isFunction(o.proxied) ? - o.proxied(animOptions) : o.proxied; - - o.duration = $.isFunction(o.proxiedDuration) ? - o.proxiedDuration(animOptions) : o.proxiedDuration; - - var animations = $.ui.accordion.animations, - duration = o.duration, - easing = o.animated; - - if (!animations[easing]) { - animations[easing] = function(options) { - this.slide(options, { - easing: easing, - duration: duration || 700 - }); - }; - } - - animations[easing](animOptions); - - } else { - - if (o.collapsible && clickedIsActive) { - toShow.toggle(); - } else { - toHide.hide(); - toShow.show(); - } - - complete(true); - - } - - toHide.prev().attr('aria-expanded','false').attr("tabIndex", "-1").blur(); - toShow.prev().attr('aria-expanded','true').attr("tabIndex", "0").focus(); - - }, - - _completed: function(cancel) { - - var o = this.options; - - this.running = cancel ? 0 : --this.running; - if (this.running) return; - - if (o.clearStyle) { - this.toShow.add(this.toHide).css({ - height: "", - overflow: "" - }); - } - - this._trigger('change', null, this.data); - } - -}); - - -$.extend($.ui.accordion, { - version: "1.7", - defaults: { - active: null, - alwaysOpen: true, //deprecated, use collapsible - animated: 'slide', - autoHeight: true, - clearStyle: false, - collapsible: false, - event: "click", - fillSpace: false, - header: "> 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(); - } - }, - animations: { - slide: function(options, additions) { - options = $.extend({ - easing: "swing", - duration: 300 - }, options, additions); - if ( !options.toHide.size() ) { - options.toShow.animate({height: "show"}, options); - return; - } - if ( !options.toShow.size() ) { - options.toHide.animate({height: "hide"}, options); - return; - } - var overflow = options.toShow.css('overflow'), - percentDone, - showProps = {}, - hideProps = {}, - fxAttrs = [ "height", "paddingTop", "paddingBottom" ], - originalWidth; - // fix width before calculating height of hidden element - var s = options.toShow; - originalWidth = s[0].style.width; - s.width( parseInt(s.parent().width(),10) - parseInt(s.css("paddingLeft"),10) - parseInt(s.css("paddingRight"),10) - parseInt(s.css("borderLeftWidth"),10) - parseInt(s.css("borderRightWidth"),10) ); - - $.each(fxAttrs, function(i, prop) { - hideProps[prop] = 'hide'; - - var parts = ('' + $.css(options.toShow[0], prop)).match(/^([\d+-.]+)(.*)$/); - showProps[prop] = { - value: parts[1], - unit: parts[2] || 'px' - }; - }); - options.toShow.css({ height: 0, overflow: 'hidden' }).show(); - options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate(hideProps,{ - step: function(now, settings) { - // only calculate the percent when animating height - // IE gets very inconsistent results when animating elements - // with small values, which is common for padding - if (settings.prop == 'height') { - percentDone = (settings.now - settings.start) / (settings.end - settings.start); - } - - options.toShow[0].style[settings.prop] = - (percentDone * showProps[settings.prop].value) + showProps[settings.prop].unit; - }, - duration: options.duration, - easing: options.easing, - complete: function() { - if ( !options.autoHeight ) { - options.toShow.css("height", ""); - } - options.toShow.css("width", originalWidth); - options.toShow.css({overflow: overflow}); - options.complete(); - } - }); - }, - bounceslide: function(options) { - this.slide(options, { - easing: options.down ? "easeOutBounce" : "swing", - duration: options.down ? 1000 : 200 - }); - }, - easeslide: function(options) { - this.slide(options, { - easing: "easeinout", - duration: 700 - }); - } - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.js deleted file mode 100644 index 89300d9..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.js +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.min.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.min.js deleted file mode 100644 index 01679c4..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.core.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* - * Compressed by JSA(www.xidea.org) - */ -eval(function(E,I,A,D,J,K,L,H){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)K[C(D--)]=I[--A];function N(A){return K[A]==L[A]?A:K[A]}if(''.replace(/^/,String)){var M=E.match(J),B=M[0],F=E.split(J),G=0;if(E.indexOf(F[0]))F=[''].concat(F);do{H[A++]=F[G++];H[A++]=N(B)}while(B=M[G]);H[A++]=F[G]||'';return H.join('')}return E.replace(J,N)}('Bb.L||(u(B){N F=B.M.l,C=B.q.mozilla&&(parseFloat(B.q.BY)G)c T;A[C]=H;J=(A[C]>G);A[C]=G;c J},BI:u(I,A,J){c(I>A)&&(I<(A+J))},isOver:u(D,E,I,C,A,J){c B.L.BI(D,I,A)&&B.L.BI(E,C,J)},keyCode:{BACKSPACE:CG,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:Bc,SPACE:32,TAB:Bw,UP:38}};K(C){N E=B.R,B_=B.M.BQ,A="http://www.w3.org/2005/07/BF",I=/^Z-/,D=/^Bm:/;B.R=u(B,F,J){N C=J!==BD;c(F=="role"?(C?E.V(Q,B,F,"Bm:"+J):(E.b(Q,3)||"").s(D,"")):(I.S(F)?(C?B.setAttributeNS(A,F.s(I,"BF:"),J):E.V(Q,B,F.s(I,"BF:"))):E.b(Q,3)))};B.M.BQ=u(J){c(I.S(J)?Q.Y(u(){Q.removeAttributeNS(A,J.s(I,""))}):B_.V(Q,J))}}B.M.k({l:u(){B("*",Q).BE(Q).Y(u(){B(Q).triggerHandler("l")});c F.b(Q,3)},enableSelection:u(){c Q.R("5","off").O("B0","").j("BU.L")},disableSelection:u(){c Q.R("5","Bf").O("B0","none").U("BU.L",u(){c a})},scrollParent:u(){N J;K((B.q.X&&(/(static|CB)/).S(Q.O("z")))||(/BW/).S(Q.O("z")))J=Q.r().n(u(){c(/(CB|BW|B5)/).S(B.d(Q,"z",H))&&(/(Bq|By)/).S(B.d(Q,"w",H)+B.d(Q,"w-Bv",H)+B.d(Q,"w-Bz",H))}).B9(G);else J=Q.r().n(u(){c(/(Bq|By)/).S(B.d(Q,"w",H)+B.d(Q,"w-Bv",H)+B.d(Q,"w-Bz",H))}).B9(G);c(/B5/).S(Q.O("z"))||!J.e?B(1):J}});B.k(B.expr[":"],{W:u(A,I,J){c!!B.W(A,J[CE])},B3:u(J){N I=J.nodeName.toLowerCase(),A=B.R(J,"BV");c(/input|select|textarea|Bu|object/.S(I)?!J.v:"CC"==I||"B4"==I?J.href||!BB(A):!BB(A))&&!B(J)["B4"==I?"r":"closest"](":Bp").e},tabbable:u(J){N I=B.R(J,"BV");c(BB(I)||I>=G)&&B(J).is(":B3")}});u J(J,E,D,I){u A(I){N A=B[J][E][I]||[];c(g A=="h"?A.BM(/,?\\CD+/):A)}N C=A("getter");K(I.e==H&&g I[G]=="h")C=C.concat(A("B7"));c(B.inArray(D,C)!=-H)}B.i=u(C,A){N I=C.BM(".")[G];C=C.BM(".")[H];B.M[C]=u(F){N E=(g F=="h"),D=Array.2.slice.V(3,H);K(E&&F.substring(G,H)=="I")c Q;K(E&&J(I,C,F,D)){N A=B.W(Q[G],C);c(A?A[F].b(A,D):BD)}c Q.Y(u(){N J=B.W(Q,C);(!J&&!E&&B.W(Q,C,new B[I][C](Q,F)).B8());(J&&E&&B.B1(J[F])&&J[F].b(J,D))})};B[I]=B[I]||{};B[I][C]=u(J,D){N A=Q;Q.BK=I;Q.4=C;Q.BP=B[I][C].eventPrefix||C;Q.BG=I+"-"+C;Q.p=B.k({},B.i.0,B[I][C].0,B.Bo&&B.Bo.get(J)[C],D);Q.o=B(J).U("setData."+C,u(C,I,B){K(C.f==J)c A.x(I,B)}).U("getData."+C,u(B,I){K(B.f==J)c A.BN(I)}).U("l",u(){c A.Bh()})};B[I][C].2=B.k({},B.i.2,A);B[I][C].B7="Bi"};B.i.2={B8:u(){},Bh:u(){Q.o.removeData(Q.4).Be(Q.BG+"-v"+" "+Q.BK+"-Ba-v").BQ("Z-v")},Bi:u(J,I){N C=J,A=Q;K(g J=="h"){K(I===BD)c Q.BN(J);C={};C[J]=I}B.Y(C,u(J,I){A.x(J,I)})},BN:u(J){c Q.p[J]},x:u(J,I){Q.p[J]=I;K(J=="v")Q.o[I?"addClass":"Be"](Q.BG+"-v"+" "+Q.BK+"-Ba-v").R("Z-v",I)},enable:u(){Q.x("v",a)},disable:u(){Q.x("v",T)},_trigger:u(A,E,D){N I=Q.p[A],F=(A==Q.BP?A:Q.BP+A);E=B.Event(E);E.type=F;K(E.7)P(N J=B.Bl.Bk.e,C;J;){C=B.Bl.Bk[--J];E[C]=E.7[C]}Q.o.trigger(E,D);c!(B.B1(I)&&I.V(Q.o[G],E,D)===a||E.isDefaultPrevented())}};B.i.0={v:a};B.L.Bt={_mouseInit:u(){N J=Q;Q.o.U("mousedown."+Q.4,u(I){c J.BX(I)}).U("click."+Q.4,u(I){K(J._){J._=a;I.stopImmediatePropagation();c a}});K(B.q.X){Q.BT=Q.o.R("5");Q.o.R("5","Bf")}Q.started=a},_mouseDestroy:u(){Q.o.j("."+Q.4);(B.q.X&&Q.o.R("5",Q.BT))},BX:u(C){C.7=C.7||{};K(C.7.B$)c;(Q.6&&Q.y(C));Q.9=C;N A=Q,I=(C.which==H),J=(g Q.p.m=="h"?B(C.f).r().BE(C.f).n(Q.p.m).e:a);K(!I||J||!Q.Bs(C))c T;Q.8=!Q.p.BH;K(!Q.8)Q._mouseDelayTimer=setTimeout(u(){A.8=T},Q.p.BH);K(Q.BR(C)&&Q.BC(C)){Q.6=(Q.BO(C)!==a);K(!Q.6){C.BS();c T}}Q.$=u(J){c A.Bx(J)};Q.BA=u(J){c A.y(J)};B(1).U("BZ."+Q.4,Q.$).U("CA."+Q.4,Q.BA);(B.q.safari||C.BS());C.7.B$=T;c T},Bx:u(J){K(B.q.X&&!J.Bu)c Q.y(J);K(Q.6){Q.BL(J);c J.BS()}K(Q.BR(J)&&Q.BC(J)){Q.6=(Q.BO(Q.9,J)!==a);(Q.6?Q.BL(J):Q.y(J))}c!Q.6},y:u(J){B(1).j("BZ."+Q.4,Q.$).j("CA."+Q.4,Q.BA);K(Q.6){Q.6=a;Q._=(J.f==Q.9.f);Q.B6(J)}c a},BR:u(J){c(BJ.max(BJ.Bn(Q.9.Bj-J.Bj),BJ.Bn(Q.9.Bg-J.Bg))>=Q.p.Bd)},BC:u(J){c Q.8},BO:u(J){},BL:u(J){},B6:u(J){},Bs:u(J){c T}};B.L.Bt.0={m:null,Bd:H,BH:G}})(Bb)','0|1|_|$|if|ui|fn|var|css|for|this|attr|test|true|bind|call|data|msie|each|aria|false|apply|return|curCSS|length|target|typeof|string|widget|unbind|extend|remove|cancel|filter|element|options|browser|parents|replace|plugins|function|disabled|overflow|_setData|_mouseUp|position|defaults|document|prototype|arguments|widgetName|unselectable|_mouseStarted|originalEvent|mouseDelayMet|_mouseDownEvent|_preventClickEvent|_mouseMoveDelegate|_mouseUpDelegate|isNaN|_mouseDelayMet|undefined|add|aaa|widgetBaseClass|delay|isOverAxis|Math|namespace|_mouseDrag|split|_getData|_mouseStart|widgetEventPrefix|removeAttr|_mouseDistanceMet|preventDefault|_mouseUnselectable|selectstart|tabindex|absolute|_mouseDown|version|mousemove|state|jQuery|16|distance|removeClass|on|pageY|destroy|option|pageX|props|event|wairole|abs|metadata|hidden|auto|contains|_mouseCapture|mouse|button|y|9|_mouseMove|scroll|x|MozUserSelect|isFunction|compareDocumentPosition|focusable|area|fixed|_mouseStop|getterSetter|_init|eq|G|mouseHandled|mouseup|relative|a|s|3|7|8'.split('|'),129,134,/[\w\$]+/g,{},{},[])) \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.js deleted file mode 100644 index 514cf0d..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.js +++ /dev/null @@ -1,1626 +0,0 @@ -/* - * jQuery UI Datepicker 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ - -(function($) { // hide the namespace - -$.extend($.ui, { datepicker: { version: "1.7" } }); - -var PROP_NAME = 'datepicker'; - -/* Date picker manager. - Use the singleton instance of this class, $.datepicker, to interact with the date picker. - Settings for (groups of) date pickers are maintained in an instance object, - allowing multiple different settings on the same page. */ - -function Datepicker() { - this.debug = false; // Change this to true to start debugging - this._curInst = null; // The current instance in use - this._keyEvent = false; // If the last event was a key event - this._disabledInputs = []; // List of date picker inputs that have been disabled - this._datepickerShowing = false; // True if the popup picker is showing , false if not - this._inDialog = false; // True if showing within a "dialog", false if not - this._mainDivId = 'ui-datepicker-div'; // The ID of the main datepicker division - this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class - this._appendClass = 'ui-datepicker-append'; // The name of the append marker class - this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class - this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class - this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class - this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class - this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class - this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class - this.regional = []; // Available regional settings, indexed by language code - this.regional[''] = { // Default regional settings - closeText: 'Done', // Display text for close link - prevText: 'Prev', // Display text for previous month link - nextText: 'Next', // Display text for next month link - currentText: 'Today', // Display text for current month link - monthNames: ['January','February','March','April','May','June', - 'July','August','September','October','November','December'], // Names of months for drop-down and formatting - monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting - dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting - dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting - dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday - dateFormat: 'mm/dd/yy', // See format options on parseDate - firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ... - isRTL: false // True if right-to-left language, false if left-to-right - }; - this._defaults = { // Global defaults for all the date picker instances - showOn: 'focus', // 'focus' for popup on focus, - // 'button' for trigger button, or 'both' for either - showAnim: 'show', // Name of jQuery animation for popup - showOptions: {}, // Options for enhanced animations - defaultDate: null, // Used when field is blank: actual date, - // +/-number for offset from today, null for today - appendText: '', // Display text following the input box, e.g. showing the format - buttonText: '...', // Text for trigger button - buttonImage: '', // URL for trigger button image - buttonImageOnly: false, // True if the image appears alone, false if it appears on a button - hideIfNoPrevNext: false, // True to hide next/previous month links - // if not applicable, false to just disable them - navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links - gotoCurrent: false, // True if today link goes back to current selection instead - changeMonth: false, // True if month can be selected directly, false if only prev/next - changeYear: false, // True if year can be selected directly, false if only prev/next - showMonthAfterYear: false, // True if the year select precedes month, false for month then year - yearRange: '-10:+10', // Range of years to display in drop-down, - // either relative to current year (-nn:+nn) or absolute (nnnn:nnnn) - showOtherMonths: false, // True to show dates in other months, false to leave blank - calculateWeek: this.iso8601Week, // How to calculate the week of the year, - // takes a Date and returns the number of the week for it - shortYearCutoff: '+10', // Short year values < this are in the current century, - // > this are in the previous century, - // string value starting with '+' for current year + value - minDate: null, // The earliest selectable date, or null for no limit - maxDate: null, // The latest selectable date, or null for no limit - duration: 'normal', // Duration of display/closure - beforeShowDay: null, // Function that takes a date and returns an array with - // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '', - // [2] = cell title (optional), e.g. $.datepicker.noWeekends - beforeShow: null, // Function that takes an input field and - // returns a set of custom settings for the date picker - onSelect: null, // Define a callback function when a date is selected - onChangeMonthYear: null, // Define a callback function when the month or year is changed - onClose: null, // Define a callback function when the datepicker is closed - numberOfMonths: 1, // Number of months to show at a time - showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0) - stepMonths: 1, // Number of months to step back/forward - stepBigMonths: 12, // Number of months to step back/forward for the big links - altField: '', // Selector for an alternate field to store selected dates into - altFormat: '', // The date format to use for the alternate field - constrainInput: true, // The input is constrained by the current date format - showButtonPanel: false // True to show button panel, false to not show it - }; - $.extend(this._defaults, this.regional['']); - this.dpDiv = $('
    '); -} - -$.extend(Datepicker.prototype, { - /* Class name added to elements to indicate already configured with a date picker. */ - markerClassName: 'hasDatepicker', - - /* Debug logging (if enabled). */ - log: function () { - if (this.debug) - console.log.apply('', arguments); - }, - - /* Override the default settings for all instances of the date picker. - @param settings object - the new settings to use as defaults (anonymous object) - @return the manager object */ - setDefaults: function(settings) { - extendRemove(this._defaults, settings || {}); - return this; - }, - - /* Attach the date picker to a jQuery selection. - @param target element - the target input field or division or span - @param settings object - the new settings to use for this date picker instance (anonymous) */ - _attachDatepicker: function(target, settings) { - // check for settings on the control itself - in namespace 'date:' - var inlineSettings = null; - for (var attrName in this._defaults) { - var attrValue = target.getAttribute('date:' + attrName); - if (attrValue) { - inlineSettings = inlineSettings || {}; - try { - inlineSettings[attrName] = eval(attrValue); - } catch (err) { - inlineSettings[attrName] = attrValue; - } - } - } - var nodeName = target.nodeName.toLowerCase(); - var inline = (nodeName == 'div' || nodeName == 'span'); - if (!target.id) - target.id = 'dp' + (++this.uuid); - var inst = this._newInst($(target), inline); - inst.settings = $.extend({}, settings || {}, inlineSettings || {}); - if (nodeName == 'input') { - this._connectDatepicker(target, inst); - } else if (inline) { - this._inlineDatepicker(target, inst); - } - }, - - /* Create a new instance object. */ - _newInst: function(target, inline) { - var id = target[0].id.replace(/([:\[\]\.])/g, '\\\\$1'); // escape jQuery meta chars - return {id: id, input: target, // associated target - selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection - drawMonth: 0, drawYear: 0, // month being drawn - inline: inline, // is datepicker inline or not - dpDiv: (!inline ? this.dpDiv : // presentation div - $('
    '))}; - }, - - /* Attach the date picker to an input field. */ - _connectDatepicker: function(target, inst) { - var input = $(target); - if (input.hasClass(this.markerClassName)) - return; - var appendText = this._get(inst, 'appendText'); - var isRTL = this._get(inst, 'isRTL'); - if (appendText) - input[isRTL ? 'before' : 'after']('' + appendText + ''); - var showOn = this._get(inst, 'showOn'); - if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field - input.focus(this._showDatepicker); - if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked - var buttonText = this._get(inst, 'buttonText'); - var buttonImage = this._get(inst, 'buttonImage'); - var trigger = $(this._get(inst, 'buttonImageOnly') ? - $('').addClass(this._triggerClass). - attr({ src: buttonImage, alt: buttonText, title: buttonText }) : - $('').addClass(this._triggerClass). - html(buttonImage == '' ? buttonText : $('').attr( - { src:buttonImage, alt:buttonText, title:buttonText }))); - input[isRTL ? 'before' : 'after'](trigger); - trigger.click(function() { - if ($.datepicker._datepickerShowing && $.datepicker._lastInput == target) - $.datepicker._hideDatepicker(); - else - $.datepicker._showDatepicker(target); - return false; - }); - } - input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress). - bind("setData.datepicker", function(event, key, value) { - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key) { - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - }, - - /* Attach an inline date picker to a div. */ - _inlineDatepicker: function(target, inst) { - var divSpan = $(target); - if (divSpan.hasClass(this.markerClassName)) - return; - divSpan.addClass(this.markerClassName).append(inst.dpDiv). - bind("setData.datepicker", function(event, key, value){ - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key){ - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - this._setDate(inst, this._getDefaultDate(inst)); - this._updateDatepicker(inst); - this._updateAlternate(inst); - }, - - /* Pop-up the date picker in a "dialog" box. - @param input element - ignored - @param dateText string - the initial date to display (in the current format) - @param onSelect function - the function(dateText) to call when a date is selected - @param settings object - update the dialog date picker instance's settings (anonymous object) - @param pos int[2] - coordinates for the dialog's position within the screen or - event - with x/y coordinates or - leave empty for default (screen centre) - @return the manager object */ - _dialogDatepicker: function(input, dateText, onSelect, settings, pos) { - var inst = this._dialogInst; // internal instance - if (!inst) { - var id = 'dp' + (++this.uuid); - this._dialogInput = $(''); - this._dialogInput.keydown(this._doKeyDown); - $('body').append(this._dialogInput); - inst = this._dialogInst = this._newInst(this._dialogInput, false); - inst.settings = {}; - $.data(this._dialogInput[0], PROP_NAME, inst); - } - extendRemove(inst.settings, settings || {}); - this._dialogInput.val(dateText); - - this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null); - if (!this._pos) { - var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; - var browserHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; - var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft; - var scrollY = document.documentElement.scrollTop || document.body.scrollTop; - this._pos = // should use actual width/height below - [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY]; - } - - // move input on screen for focus, but hidden behind dialog - this._dialogInput.css('left', this._pos[0] + 'px').css('top', this._pos[1] + 'px'); - inst.settings.onSelect = onSelect; - this._inDialog = true; - this.dpDiv.addClass(this._dialogClass); - this._showDatepicker(this._dialogInput[0]); - if ($.blockUI) - $.blockUI(this.dpDiv); - $.data(this._dialogInput[0], PROP_NAME, inst); - return this; - }, - - /* Detach a datepicker from its control. - @param target element - the target input field or division or span */ - _destroyDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - $.removeData(target, PROP_NAME); - if (nodeName == 'input') { - $target.siblings('.' + this._appendClass).remove().end(). - siblings('.' + this._triggerClass).remove().end(). - removeClass(this.markerClassName). - unbind('focus', this._showDatepicker). - unbind('keydown', this._doKeyDown). - unbind('keypress', this._doKeyPress); - } else if (nodeName == 'div' || nodeName == 'span') - $target.removeClass(this.markerClassName).empty(); - }, - - /* Enable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _enableDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = false; - $target.siblings('button.' + this._triggerClass). - each(function() { this.disabled = false; }).end(). - siblings('img.' + this._triggerClass). - css({opacity: '1.0', cursor: ''}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().removeClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - }, - - /* Disable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _disableDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = true; - $target.siblings('button.' + this._triggerClass). - each(function() { this.disabled = true; }).end(). - siblings('img.' + this._triggerClass). - css({opacity: '0.5', cursor: 'default'}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().addClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - this._disabledInputs[this._disabledInputs.length] = target; - }, - - /* Is the first field in a jQuery collection disabled as a datepicker? - @param target element - the target input field or division or span - @return boolean - true if disabled, false if enabled */ - _isDisabledDatepicker: function(target) { - if (!target) { - return false; - } - for (var i = 0; i < this._disabledInputs.length; i++) { - if (this._disabledInputs[i] == target) - return true; - } - return false; - }, - - /* Retrieve the instance data for the target control. - @param target element - the target input field or division or span - @return object - the associated instance data - @throws error if a jQuery problem getting data */ - _getInst: function(target) { - try { - return $.data(target, PROP_NAME); - } - catch (err) { - throw 'Missing instance data for this datepicker'; - } - }, - - /* Update the settings for a date picker attached to an input field or division. - @param target element - the target input field or division or span - @param name object - the new settings to update or - string - the name of the setting to change or - @param value any - the new value for the setting (omit if above is an object) */ - _optionDatepicker: function(target, name, value) { - var settings = name || {}; - if (typeof name == 'string') { - settings = {}; - settings[name] = value; - } - var inst = this._getInst(target); - if (inst) { - if (this._curInst == inst) { - this._hideDatepicker(null); - } - extendRemove(inst.settings, settings); - var date = new Date(); - extendRemove(inst, {rangeStart: null, // start of range - endDay: null, endMonth: null, endYear: null, // end of range - selectedDay: date.getDate(), selectedMonth: date.getMonth(), - selectedYear: date.getFullYear(), // starting point - currentDay: date.getDate(), currentMonth: date.getMonth(), - currentYear: date.getFullYear(), // current selection - drawMonth: date.getMonth(), drawYear: date.getFullYear()}); // month being drawn - this._updateDatepicker(inst); - } - }, - - // change method deprecated - _changeDatepicker: function(target, name, value) { - this._optionDatepicker(target, name, value); - }, - - /* Redraw the date picker attached to an input field or division. - @param target element - the target input field or division or span */ - _refreshDatepicker: function(target) { - var inst = this._getInst(target); - if (inst) { - this._updateDatepicker(inst); - } - }, - - /* Set the dates for a jQuery selection. - @param target element - the target input field or division or span - @param date Date - the new date - @param endDate Date - the new end date for a range (optional) */ - _setDateDatepicker: function(target, date, endDate) { - var inst = this._getInst(target); - if (inst) { - this._setDate(inst, date, endDate); - this._updateDatepicker(inst); - this._updateAlternate(inst); - } - }, - - /* Get the date(s) for the first entry in a jQuery selection. - @param target element - the target input field or division or span - @return Date - the current date or - Date[2] - the current dates for a range */ - _getDateDatepicker: function(target) { - var inst = this._getInst(target); - if (inst && !inst.inline) - this._setDateFromField(inst); - return (inst ? this._getDate(inst) : null); - }, - - /* Handle keystrokes. */ - _doKeyDown: function(event) { - var inst = $.datepicker._getInst(event.target); - var handled = true; - var isRTL = inst.dpDiv.is('.ui-datepicker-rtl'); - inst._keyEvent = true; - if ($.datepicker._datepickerShowing) - switch (event.keyCode) { - case 9: $.datepicker._hideDatepicker(null, ''); - break; // hide on tab out - case 13: var sel = $('td.' + $.datepicker._dayOverClass + - ', td.' + $.datepicker._currentClass, inst.dpDiv); - if (sel[0]) - $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]); - else - $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - return false; // don't submit the form - break; // select the value on enter - case 27: $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - break; // hide on escape - case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // previous month/year on page up/+ ctrl - case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // next month/year on page down/+ ctrl - case 35: if (event.ctrlKey || event.metaKey) $.datepicker._clearDate(event.target); - handled = event.ctrlKey || event.metaKey; - break; // clear on ctrl or command +end - case 36: if (event.ctrlKey || event.metaKey) $.datepicker._gotoToday(event.target); - handled = event.ctrlKey || event.metaKey; - break; // current on ctrl or command +home - case 37: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D'); - handled = event.ctrlKey || event.metaKey; - // -1 day on ctrl or command +left - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +left on Mac - break; - case 38: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, -7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // -1 week on ctrl or command +up - case 39: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D'); - handled = event.ctrlKey || event.metaKey; - // +1 day on ctrl or command +right - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +right - break; - case 40: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, +7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // +1 week on ctrl or command +down - default: handled = false; - } - else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home - $.datepicker._showDatepicker(this); - else { - handled = false; - } - if (handled) { - event.preventDefault(); - event.stopPropagation(); - } - }, - - /* Filter entered characters - based on date format. */ - _doKeyPress: function(event) { - var inst = $.datepicker._getInst(event.target); - if ($.datepicker._get(inst, 'constrainInput')) { - var chars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat')); - var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode); - return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1); - } - }, - - /* Pop-up the date picker for a given input field. - @param input element - the input field attached to the date picker or - event - if triggered by focus */ - _showDatepicker: function(input) { - input = input.target || input; - if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger - input = $('input', input.parentNode)[0]; - if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput == input) // already here - return; - var inst = $.datepicker._getInst(input); - var beforeShow = $.datepicker._get(inst, 'beforeShow'); - extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); - $.datepicker._hideDatepicker(null, ''); - $.datepicker._lastInput = input; - $.datepicker._setDateFromField(inst); - if ($.datepicker._inDialog) // hide cursor - input.value = ''; - if (!$.datepicker._pos) { // position below input - $.datepicker._pos = $.datepicker._findPos(input); - $.datepicker._pos[1] += input.offsetHeight; // add the height - } - var isFixed = false; - $(input).parents().each(function() { - isFixed |= $(this).css('position') == 'fixed'; - return !isFixed; - }); - if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled - $.datepicker._pos[0] -= document.documentElement.scrollLeft; - $.datepicker._pos[1] -= document.documentElement.scrollTop; - } - var offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]}; - $.datepicker._pos = null; - inst.rangeStart = null; - // determine sizing offscreen - inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'}); - $.datepicker._updateDatepicker(inst); - // fix width for dynamic number of date pickers - // and adjust position before showing - offset = $.datepicker._checkOffset(inst, offset, isFixed); - inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ? - 'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none', - left: offset.left + 'px', top: offset.top + 'px'}); - if (!inst.inline) { - var showAnim = $.datepicker._get(inst, 'showAnim') || 'show'; - var duration = $.datepicker._get(inst, 'duration'); - var postProcess = function() { - $.datepicker._datepickerShowing = true; - if ($.browser.msie && parseInt($.browser.version,10) < 7) // fix IE < 7 select problems - $('iframe.ui-datepicker-cover').css({width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}); - }; - if ($.effects && $.effects[showAnim]) - inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess); - else - inst.dpDiv[showAnim](duration, postProcess); - if (duration == '') - postProcess(); - if (inst.input[0].type != 'hidden') - inst.input[0].focus(); - $.datepicker._curInst = inst; - } - }, - - /* Generate the date picker content. */ - _updateDatepicker: function(inst) { - var dims = {width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}; - var self = this; - inst.dpDiv.empty().append(this._generateHTML(inst)) - .find('iframe.ui-datepicker-cover'). - css({width: dims.width, height: dims.height}) - .end() - .find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a') - .bind('mouseout', function(){ - $(this).removeClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover'); - }) - .bind('mouseover', function(){ - if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) { - $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); - $(this).addClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover'); - } - }) - .end() - .find('.' + this._dayOverClass + ' a') - .trigger('mouseover') - .end(); - var numMonths = this._getNumberOfMonths(inst); - var cols = numMonths[1]; - var width = 17; - if (cols > 1) { - inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em'); - } else { - inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); - } - inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + - 'Class']('ui-datepicker-multi'); - inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') + - 'Class']('ui-datepicker-rtl'); - if (inst.input && inst.input[0].type != 'hidden' && inst == $.datepicker._curInst) - $(inst.input[0]).focus(); - }, - - /* Check positioning to remain on screen. */ - _checkOffset: function(inst, offset, isFixed) { - var dpWidth = inst.dpDiv.outerWidth(); - var dpHeight = inst.dpDiv.outerHeight(); - var inputWidth = inst.input ? inst.input.outerWidth() : 0; - var inputHeight = inst.input ? inst.input.outerHeight() : 0; - var viewWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) + $(document).scrollLeft(); - var viewHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight) + $(document).scrollTop(); - - offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0); - offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0; - offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0; - - // now check if datepicker is showing outside window viewport - move to a better place if so. - offset.left -= (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth) : 0; - offset.top -= (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ? Math.abs(offset.top + dpHeight + inputHeight*2 - viewHeight) : 0; - - return offset; - }, - - /* Find an object's position on the screen. */ - _findPos: function(obj) { - while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) { - obj = obj.nextSibling; - } - var position = $(obj).offset(); - return [position.left, position.top]; - }, - - /* Hide the date picker from view. - @param input element - the input field attached to the date picker - @param duration string - the duration over which to close the date picker */ - _hideDatepicker: function(input, duration) { - var inst = this._curInst; - if (!inst || (input && inst != $.data(input, PROP_NAME))) - return; - if (inst.stayOpen) - this._selectDate('#' + inst.id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - inst.stayOpen = false; - if (this._datepickerShowing) { - duration = (duration != null ? duration : this._get(inst, 'duration')); - var showAnim = this._get(inst, 'showAnim'); - var postProcess = function() { - $.datepicker._tidyDialog(inst); - }; - if (duration != '' && $.effects && $.effects[showAnim]) - inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), - duration, postProcess); - else - inst.dpDiv[(duration == '' ? 'hide' : (showAnim == 'slideDown' ? 'slideUp' : - (showAnim == 'fadeIn' ? 'fadeOut' : 'hide')))](duration, postProcess); - if (duration == '') - this._tidyDialog(inst); - var onClose = this._get(inst, 'onClose'); - if (onClose) - onClose.apply((inst.input ? inst.input[0] : null), - [(inst.input ? inst.input.val() : ''), inst]); // trigger custom callback - this._datepickerShowing = false; - this._lastInput = null; - if (this._inDialog) { - this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' }); - if ($.blockUI) { - $.unblockUI(); - $('body').append(this.dpDiv); - } - } - this._inDialog = false; - } - this._curInst = null; - }, - - /* Tidy up after a dialog display. */ - _tidyDialog: function(inst) { - inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar'); - }, - - /* Close date picker if clicked elsewhere. */ - _checkExternalClick: function(event) { - if (!$.datepicker._curInst) - return; - var $target = $(event.target); - if (($target.parents('#' + $.datepicker._mainDivId).length == 0) && - !$target.hasClass($.datepicker.markerClassName) && - !$target.hasClass($.datepicker._triggerClass) && - $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI)) - $.datepicker._hideDatepicker(null, ''); - }, - - /* Adjust one of the date sub-fields. */ - _adjustDate: function(id, offset, period) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._isDisabledDatepicker(target[0])) { - return; - } - this._adjustInstDate(inst, offset + - (period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning - period); - this._updateDatepicker(inst); - }, - - /* Action for current link. */ - _gotoToday: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._get(inst, 'gotoCurrent') && inst.currentDay) { - inst.selectedDay = inst.currentDay; - inst.drawMonth = inst.selectedMonth = inst.currentMonth; - inst.drawYear = inst.selectedYear = inst.currentYear; - } - else { - var date = new Date(); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - } - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Action for selecting a new month/year. */ - _selectMonthYear: function(id, select, period) { - var target = $(id); - var inst = this._getInst(target[0]); - inst._selectingMonthYear = false; - inst['selected' + (period == 'M' ? 'Month' : 'Year')] = - inst['draw' + (period == 'M' ? 'Month' : 'Year')] = - parseInt(select.options[select.selectedIndex].value,10); - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Restore input focus after not changing month/year. */ - _clickMonthYear: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (inst.input && inst._selectingMonthYear && !$.browser.msie) - inst.input[0].focus(); - inst._selectingMonthYear = !inst._selectingMonthYear; - }, - - /* Action for selecting a day. */ - _selectDay: function(id, month, year, td) { - var target = $(id); - if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) { - return; - } - var inst = this._getInst(target[0]); - inst.selectedDay = inst.currentDay = $('a', td).html(); - inst.selectedMonth = inst.currentMonth = month; - inst.selectedYear = inst.currentYear = year; - if (inst.stayOpen) { - inst.endDay = inst.endMonth = inst.endYear = null; - } - this._selectDate(id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - if (inst.stayOpen) { - inst.rangeStart = this._daylightSavingAdjust( - new Date(inst.currentYear, inst.currentMonth, inst.currentDay)); - this._updateDatepicker(inst); - } - }, - - /* Erase the input field and hide the date picker. */ - _clearDate: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - inst.stayOpen = false; - inst.endDay = inst.endMonth = inst.endYear = inst.rangeStart = null; - this._selectDate(target, ''); - }, - - /* Update the input field with the selected date. */ - _selectDate: function(id, dateStr) { - var target = $(id); - var inst = this._getInst(target[0]); - dateStr = (dateStr != null ? dateStr : this._formatDate(inst)); - if (inst.input) - inst.input.val(dateStr); - this._updateAlternate(inst); - var onSelect = this._get(inst, 'onSelect'); - if (onSelect) - onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback - else if (inst.input) - inst.input.trigger('change'); // fire the change event - if (inst.inline) - this._updateDatepicker(inst); - else if (!inst.stayOpen) { - this._hideDatepicker(null, this._get(inst, 'duration')); - this._lastInput = inst.input[0]; - if (typeof(inst.input[0]) != 'object') - inst.input[0].focus(); // restore focus - this._lastInput = null; - } - }, - - /* Update any alternate field to synchronise with the main field. */ - _updateAlternate: function(inst) { - var altField = this._get(inst, 'altField'); - if (altField) { // update alternate field too - var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat'); - var date = this._getDate(inst); - dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst)); - $(altField).each(function() { $(this).val(dateStr); }); - } - }, - - /* Set as beforeShowDay function to prevent selection of weekends. - @param date Date - the date to customise - @return [boolean, string] - is this date selectable?, what is its CSS class? */ - noWeekends: function(date) { - var day = date.getDay(); - return [(day > 0 && day < 6), '']; - }, - - /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition. - @param date Date - the date to get the week for - @return number - the number of the week within the year that contains this date */ - iso8601Week: function(date) { - var checkDate = new Date(date.getFullYear(), date.getMonth(), date.getDate()); - var firstMon = new Date(checkDate.getFullYear(), 1 - 1, 4); // First week always contains 4 Jan - var firstDay = firstMon.getDay() || 7; // Day of week: Mon = 1, ..., Sun = 7 - firstMon.setDate(firstMon.getDate() + 1 - firstDay); // Preceding Monday - if (firstDay < 4 && checkDate < firstMon) { // Adjust first three days in year if necessary - checkDate.setDate(checkDate.getDate() - 3); // Generate for previous year - return $.datepicker.iso8601Week(checkDate); - } else if (checkDate > new Date(checkDate.getFullYear(), 12 - 1, 28)) { // Check last three days in year - firstDay = new Date(checkDate.getFullYear() + 1, 1 - 1, 4).getDay() || 7; - if (firstDay > 4 && (checkDate.getDay() || 7) < firstDay - 3) { // Adjust if necessary - return 1; - } - } - return Math.floor(((checkDate - firstMon) / 86400000) / 7) + 1; // Weeks to given date - }, - - /* Parse a string value into a date object. - See formatDate below for the possible formats. - - @param format string - the expected format of the date - @param value string - the date in the above format - @param settings Object - attributes include: - shortYearCutoff number - the cutoff year for determining the century (optional) - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return Date - the extracted date value or null if value is blank */ - parseDate: function (format, value, settings) { - if (format == null || value == null) - throw 'Invalid arguments'; - value = (typeof value == 'object' ? value.toString() : value + ''); - if (value == '') - return null; - var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - var year = -1; - var month = -1; - var day = -1; - var doy = -1; - var literal = false; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Extract a number from the string value - var getNumber = function(match) { - lookAhead(match); - var origSize = (match == '@' ? 14 : (match == 'y' ? 4 : (match == 'o' ? 3 : 2))); - var size = origSize; - var num = 0; - while (size > 0 && iValue < value.length && - value.charAt(iValue) >= '0' && value.charAt(iValue) <= '9') { - num = num * 10 + parseInt(value.charAt(iValue++),10); - size--; - } - if (size == origSize) - throw 'Missing number at position ' + iValue; - return num; - }; - // Extract a name from the string value and convert to an index - var getName = function(match, shortNames, longNames) { - var names = (lookAhead(match) ? longNames : shortNames); - var size = 0; - for (var j = 0; j < names.length; j++) - size = Math.max(size, names[j].length); - var name = ''; - var iInit = iValue; - while (size > 0 && iValue < value.length) { - name += value.charAt(iValue++); - for (var i = 0; i < names.length; i++) - if (name == names[i]) - return i + 1; - size--; - } - throw 'Unknown name at position ' + iInit; - }; - // Confirm that a literal character matches the string value - var checkLiteral = function() { - if (value.charAt(iValue) != format.charAt(iFormat)) - throw 'Unexpected literal at position ' + iValue; - iValue++; - }; - var iValue = 0; - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - checkLiteral(); - else - switch (format.charAt(iFormat)) { - case 'd': - day = getNumber('d'); - break; - case 'D': - getName('D', dayNamesShort, dayNames); - break; - case 'o': - doy = getNumber('o'); - break; - case 'm': - month = getNumber('m'); - break; - case 'M': - month = getName('M', monthNamesShort, monthNames); - break; - case 'y': - year = getNumber('y'); - break; - case '@': - var date = new Date(getNumber('@')); - year = date.getFullYear(); - month = date.getMonth() + 1; - day = date.getDate(); - break; - case "'": - if (lookAhead("'")) - checkLiteral(); - else - literal = true; - break; - default: - checkLiteral(); - } - } - if (year == -1) - year = new Date().getFullYear(); - else if (year < 100) - year += new Date().getFullYear() - new Date().getFullYear() % 100 + - (year <= shortYearCutoff ? 0 : -100); - if (doy > -1) { - month = 1; - day = doy; - do { - var dim = this._getDaysInMonth(year, month - 1); - if (day <= dim) - break; - month++; - day -= dim; - } while (true); - } - var date = this._daylightSavingAdjust(new Date(year, month - 1, day)); - if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day) - throw 'Invalid date'; // E.g. 31/02/* - return date; - }, - - /* Standard date formats. */ - ATOM: 'yy-mm-dd', // RFC 3339 (ISO 8601) - 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', // RFC 822 - TIMESTAMP: '@', - W3C: 'yy-mm-dd', // ISO 8601 - - /* Format a date object into a string value. - The format can be combinations of the following: - d - day of month (no leading zero) - dd - day of month (two digit) - o - day of year (no leading zeros) - oo - day of year (three digit) - D - day name short - DD - day name long - m - month of year (no leading zero) - mm - month of year (two digit) - M - month name short - MM - month name long - y - year (two digit) - yy - year (four digit) - @ - Unix timestamp (ms since 01/01/1970) - '...' - literal text - '' - single quote - - @param format string - the desired format of the date - @param date Date - the date value to format - @param settings Object - attributes include: - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return string - the date in the above format */ - formatDate: function (format, date, settings) { - if (!date) - return ''; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Format a number, with leading zero if necessary - var formatNumber = function(match, value, len) { - var num = '' + value; - if (lookAhead(match)) - while (num.length < len) - num = '0' + num; - return num; - }; - // Format a name, short or long as requested - var formatName = function(match, value, shortNames, longNames) { - return (lookAhead(match) ? longNames[value] : shortNames[value]); - }; - var output = ''; - var literal = false; - if (date) - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - output += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': - output += formatNumber('d', date.getDate(), 2); - break; - case 'D': - output += formatName('D', date.getDay(), dayNamesShort, dayNames); - break; - case 'o': - var doy = date.getDate(); - for (var m = date.getMonth() - 1; m >= 0; m--) - doy += this._getDaysInMonth(date.getFullYear(), m); - output += formatNumber('o', doy, 3); - break; - case 'm': - output += formatNumber('m', date.getMonth() + 1, 2); - break; - case 'M': - output += formatName('M', date.getMonth(), monthNamesShort, monthNames); - break; - case 'y': - output += (lookAhead('y') ? date.getFullYear() : - (date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100); - break; - case '@': - output += date.getTime(); - break; - case "'": - if (lookAhead("'")) - output += "'"; - else - literal = true; - break; - default: - output += format.charAt(iFormat); - } - } - return output; - }, - - /* Extract all possible characters from the date format. */ - _possibleChars: function (format) { - var chars = ''; - var literal = false; - for (var iFormat = 0; iFormat < format.length; iFormat++) - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - chars += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': case 'm': case 'y': case '@': - chars += '0123456789'; - break; - case 'D': case 'M': - return null; // Accept anything - case "'": - if (lookAhead("'")) - chars += "'"; - else - literal = true; - break; - default: - chars += format.charAt(iFormat); - } - return chars; - }, - - /* Get a setting value, defaulting if necessary. */ - _get: function(inst, name) { - return inst.settings[name] !== undefined ? - inst.settings[name] : this._defaults[name]; - }, - - /* Parse existing date and initialise date picker. */ - _setDateFromField: function(inst) { - var dateFormat = this._get(inst, 'dateFormat'); - var dates = inst.input ? inst.input.val() : null; - inst.endDay = inst.endMonth = inst.endYear = null; - var date = defaultDate = this._getDefaultDate(inst); - var settings = this._getFormatConfig(inst); - try { - date = this.parseDate(dateFormat, dates, settings) || defaultDate; - } catch (event) { - this.log(event); - date = defaultDate; - } - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - inst.currentDay = (dates ? date.getDate() : 0); - inst.currentMonth = (dates ? date.getMonth() : 0); - inst.currentYear = (dates ? date.getFullYear() : 0); - this._adjustInstDate(inst); - }, - - /* Retrieve the default date shown on opening. */ - _getDefaultDate: function(inst) { - var date = this._determineDate(this._get(inst, 'defaultDate'), new Date()); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - return date; - }, - - /* A date may be specified as an exact value or a relative one. */ - _determineDate: function(date, defaultDate) { - var offsetNumeric = function(offset) { - var date = new Date(); - date.setDate(date.getDate() + offset); - return date; - }; - var offsetString = function(offset, getDaysInMonth) { - var date = new Date(); - var year = date.getFullYear(); - var month = date.getMonth(); - var day = date.getDate(); - var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g; - var matches = pattern.exec(offset); - while (matches) { - switch (matches[2] || 'd') { - case 'd' : case 'D' : - day += parseInt(matches[1],10); break; - case 'w' : case 'W' : - day += parseInt(matches[1],10) * 7; break; - case 'm' : case 'M' : - month += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - case 'y': case 'Y' : - year += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - } - matches = pattern.exec(offset); - } - return new Date(year, month, day); - }; - date = (date == null ? defaultDate : - (typeof date == 'string' ? offsetString(date, this._getDaysInMonth) : - (typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date))); - date = (date && date.toString() == 'Invalid Date' ? defaultDate : date); - if (date) { - date.setHours(0); - date.setMinutes(0); - date.setSeconds(0); - date.setMilliseconds(0); - } - return this._daylightSavingAdjust(date); - }, - - /* Handle switch to/from daylight saving. - Hours may be non-zero on daylight saving cut-over: - > 12 when midnight changeover, but then cannot generate - midnight datetime, so jump to 1AM, otherwise reset. - @param date (Date) the date to check - @return (Date) the corrected date */ - _daylightSavingAdjust: function(date) { - if (!date) return null; - date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0); - return date; - }, - - /* Set the date(s) directly. */ - _setDate: function(inst, date, endDate) { - var clear = !(date); - var origMonth = inst.selectedMonth; - var origYear = inst.selectedYear; - date = this._determineDate(date, new Date()); - inst.selectedDay = inst.currentDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear(); - if (origMonth != inst.selectedMonth || origYear != inst.selectedYear) - this._notifyChange(inst); - this._adjustInstDate(inst); - if (inst.input) { - inst.input.val(clear ? '' : this._formatDate(inst)); - } - }, - - /* Retrieve the date(s) directly. */ - _getDate: function(inst) { - var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null : - this._daylightSavingAdjust(new Date( - inst.currentYear, inst.currentMonth, inst.currentDay))); - return startDate; - }, - - /* Generate the HTML for the current state of the date picker. */ - _generateHTML: function(inst) { - var today = new Date(); - today = this._daylightSavingAdjust( - new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time - var isRTL = this._get(inst, 'isRTL'); - var showButtonPanel = this._get(inst, 'showButtonPanel'); - var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext'); - var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat'); - var numMonths = this._getNumberOfMonths(inst); - var showCurrentAtPos = this._get(inst, 'showCurrentAtPos'); - var stepMonths = this._get(inst, 'stepMonths'); - var stepBigMonths = this._get(inst, 'stepBigMonths'); - var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1); - var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) : - new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - var drawMonth = inst.drawMonth - showCurrentAtPos; - var drawYear = inst.drawYear; - if (drawMonth < 0) { - drawMonth += 12; - drawYear--; - } - if (maxDate) { - var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(), - maxDate.getMonth() - numMonths[1] + 1, maxDate.getDate())); - maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw); - while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) { - drawMonth--; - if (drawMonth < 0) { - drawMonth = 11; - drawYear--; - } - } - } - inst.drawMonth = drawMonth; - inst.drawYear = drawYear; - var prevText = this._get(inst, 'prevText'); - prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)), - this._getFormatConfig(inst))); - var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ? - '' + prevText + '' : - (hideIfNoPrevNext ? '' : '' + prevText + '')); - var nextText = this._get(inst, 'nextText'); - nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)), - this._getFormatConfig(inst))); - var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ? - '' + nextText + '' : - (hideIfNoPrevNext ? '' : '' + nextText + '')); - var currentText = this._get(inst, 'currentText'); - var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today); - currentText = (!navigationAsDateFormat ? currentText : - this.formatDate(currentText, gotoDate, this._getFormatConfig(inst))); - var controls = (!inst.inline ? '' : ''); - var buttonPanel = (showButtonPanel) ? '
    ' + (isRTL ? controls : '') + - (this._isInRange(inst, gotoDate) ? '' : '') + (isRTL ? '' : controls) + '
    ' : ''; - var firstDay = parseInt(this._get(inst, 'firstDay'),10); - firstDay = (isNaN(firstDay) ? 0 : firstDay); - var dayNames = this._get(inst, 'dayNames'); - var dayNamesShort = this._get(inst, 'dayNamesShort'); - var dayNamesMin = this._get(inst, 'dayNamesMin'); - var monthNames = this._get(inst, 'monthNames'); - var monthNamesShort = this._get(inst, 'monthNamesShort'); - var beforeShowDay = this._get(inst, 'beforeShowDay'); - var showOtherMonths = this._get(inst, 'showOtherMonths'); - var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week; - var endDate = inst.endDay ? this._daylightSavingAdjust( - new Date(inst.endYear, inst.endMonth, inst.endDay)) : currentDate; - var defaultDate = this._getDefaultDate(inst); - var html = ''; - for (var row = 0; row < numMonths[0]; row++) { - var group = ''; - for (var col = 0; col < numMonths[1]; col++) { - var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay)); - var cornerClass = ' ui-corner-all'; - var calender = ''; - if (isMultiMonth) { - calender += '
    '; - } - calender += '
    ' + - (/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') + - (/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') + - this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers - '
    ' + - ''; - var thead = ''; - for (var dow = 0; dow < 7; dow++) { // days of the week - var day = (dow + firstDay) % 7; - thead += '= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' + - '' + dayNamesMin[day] + ''; - } - calender += thead + ''; - var daysInMonth = this._getDaysInMonth(drawYear, drawMonth); - if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth) - inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); - var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; - var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate - var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); - for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows - calender += ''; - var tbody = ''; - for (var dow = 0; dow < 7; dow++) { // create date picker days - var daySettings = (beforeShowDay ? - beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']); - var otherMonth = (printDate.getMonth() != drawMonth); - var unselectable = otherMonth || !daySettings[0] || - (minDate && printDate < minDate) || (maxDate && printDate > maxDate); - tbody += ''; // display for this month - printDate.setDate(printDate.getDate() + 1); - printDate = this._daylightSavingAdjust(printDate); - } - calender += tbody + ''; - } - drawMonth++; - if (drawMonth > 11) { - drawMonth = 0; - drawYear++; - } - calender += '
    ' + // actions - (otherMonth ? (showOtherMonths ? printDate.getDate() : ' ') : // display for other months - (unselectable ? '' + printDate.getDate() + '' : '' + printDate.getDate() + '')) + '
    ' + (isMultiMonth ? '
    ' + - ((numMonths[0] > 0 && col == numMonths[1]-1) ? '
    ' : '') : ''); - group += calender; - } - html += group; - } - html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ? - '' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '
    '; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '' + monthNames[drawMonth] + ' '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += ''; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '' + drawYear + ''; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += ''; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '
    '; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.min.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.min.js deleted file mode 100644 index 5e0a13b..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.datepicker.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* - * Compressed by JSA(www.xidea.org) - */ -eval(function(E,I,A,D,J,K,L,H){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)K[C(D--)]=I[--A];function N(A){return K[A]==L[A]?A:K[A]}if(''.replace(/^/,String)){var M=E.match(J),B=M[0],F=E.split(J),G=0;if(E.indexOf(F[0]))F=[''].concat(F);do{H[A++]=F[G++];H[A++]=N(B)}while(B=M[G]);H[A++]=F[G]||'';return H.join('')}return E.replace(J,N)}('(0(V){V.Ct(V.X,{5:{DL:"S.T"}});a B1="5";0 C6(){f.Fh=p;f.CP=h;f.DP=p;f.Bt=[];f.CG=p;f.CT=p;f.EM="X-5-c";f.Da="X-5-BV";f.EQ="X-5-CW";f.Bm="X-5-D0";f.Eg="X-5-dialog";f._disableClass="X-5-Bb";f.EK="X-5-unselectable";f.ER="X-5-E_-day";f.Dk="X-5-days-cell-over";f.EN=[];f.EN[""]={GT:"Done",FP:"Prev",Fq:"Next",Fi:"Today",B$:["January","February","March","April","F7","June","July","August","September","October","November","December"],Bw:["Jan","Feb","Mar","Apr","F7","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B_:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],B9:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],F9:["Su","Mo","Tu","We","Th","GX","Sa"],C_:"Ds/Ca/CE",GR:R,C0:p};f.4={Ev:"B0",EH:"D9",EA:{},Cr:h,E2:"",FC:"...",GS:"",E8:p,FZ:p,Fc:p,En:p,F6:p,GF:p,Fb:p,FG:"-Y:+Y",F_:p,Fg:f.DO,C$:"+Y",minDate:h,maxDate:h,Cn:"normal",Fm:h,Fk:h,Dx:h,GN:h,F8:h,E3:S,EJ:R,Ch:S,CV:C3,FW:"",FD:"",FT:m,GO:p};V.Ct(f.4,f.EN[""]);f.r=V("")}V.Ct(C6.F0,{BT:"hasDatepicker",ET:0(){W(f.Fh)console.ET.By("",EC)},setDefaults:0(V){CX(f.4,V||{});t f},F3:0(u,BM){a Ck=h;d(a DM Fu f.4){a Do=u.getAttribute("GK:"+DM);W(Do){Ck=Ck||{};El{Ck[DM]=eval(Do)}D_(err){Ck[DM]=Do}}}a Bn=u.Bn.DH(),BV=(Bn=="c"||Bn=="l");W(!u.Z)u.Z="Fr"+(++f.Ed);a De=f.EZ(V(u),BV);De.BM=V.Ct({},BM||{},Ck||{});W(Bn=="o")f.E4(u,De);k W(BV)f.GU(u,De)},EZ:0(A,U){a B=A[R].Z.replace(/([:\\[\\]\\.])/Dg,"\\\\\\\\$1");t{Z:B,o:A,8:R,_:R,9:R,BY:R,BW:R,BV:U,r:(!U?f.r:V(""))}},E4:0(F,C){a B=V(F);W(B.B7(f.BT))t;a D=f.g(C,"E2"),E=f.g(C,"C0");W(D)B[E?"F5":"Et"](""+D+"");a H=f.g(C,"Ev");W(H=="B0"||H=="Fw")B.B0(f.Ce);W(H=="BG"||H=="Fw"){a A=f.g(C,"FC"),G=f.g(C,"GS"),U=V(f.g(C,"E8")?V("
    ").BZ(f.Bm).Es({EF:G,FR:A,Br:A}):V("").BZ(f.Bm).Er(G==""?A:V("
    ").Es({EF:G,FR:A,Br:A})));B[E?"F5":"Et"](U);U.click(0(){W(V.5.CG&&V.5.Cb==F)V.5.Bd();k V.5.Ce(F);t p})}B.BZ(f.BT).ES(f.DR).Ey(f.Ep).Cg("GE.5",0(A,V,U){C.BM[V]=U}).Cg("FJ.5",0(U,V){t f.g(C,V)});V.CC(F,B1,C)},GU:0(B,U){a A=V(B);W(A.B7(f.BT))t;A.BZ(f.BT).CW(U.r).Cg("GE.5",0(B,V,A){U.BM[V]=A}).Cg("FJ.5",0(A,V){t f.g(U,V)});V.CC(B,B1,U);f.Ea(U,f.DJ(U));f.Bu(U);f.Dv(U)},_dialogDatepicker:0(B,I,F,U,E){a A=f.FF;W(!A){a J="Fr"+(++f.Ed);f.Bc=V("");f.Bc.ES(f.DR);V("Bi").CW(f.Bc);A=f.FF=f.EZ(f.Bc,p);A.BM={};V.CC(f.Bc[R],B1,A)}CX(A.BM,U||{});f.Bc.CI(I);f.BD=(E?(E.w?E:[E.pageX,E.pageY]):h);W(!f.BD){a D=DE.GQ||2.B4.Dr||2.Bi.Dr,H=DE.GG||2.B4.DU||2.Bi.DU,G=2.B4.DA||2.Bi.DA,C=2.B4.DD||2.Bi.DD;f.BD=[(D/BN)-CH+G,(H/BN)-150+C]}f.Bc.BS("n",f.BD[R]+"DZ").BS("e",f.BD[S]+"DZ");A.BM.Dx=F;f.CT=m;f.r.BZ(f.Eg);f.Ce(f.Bc[R]);W(V.C5)V.C5(f.r);V.CC(f.Bc[R],B1,A);t f},_destroyDatepicker:0(A){a B=V(A);W(!B.B7(f.BT))t;a U=A.Bn.DH();V.removeData(A,B1);W(U=="o")B.Cf("."+f.EQ).DV().Bv().Cf("."+f.Bm).DV().Bv().Bp(f.BT).DQ("B0",f.Ce).DQ("ES",f.DR).DQ("Ey",f.Ep);k W(U=="c"||U=="l")B.Bp(f.BT).Eu()},_enableDatepicker:0(B){a C=V(B);W(!C.B7(f.BT))t;a A=B.Bn.DH();W(A=="o"){B.Bb=p;C.Cf("BG."+f.Bm).C1(0(){f.Bb=p}).Bv().Cf("DT."+f.Bm).BS({Fo:"S.R",GL:""})}k W(A=="c"||A=="l"){a U=C.DW("."+f.Da);U.DW().Bp("X-BA-Bb")}f.Bt=V.FV(f.Bt,0(V){t(V==B?h:V)})},_disableDatepicker:0(B){a C=V(B);W(!C.B7(f.BT))t;a A=B.Bn.DH();W(A=="o"){B.Bb=m;C.Cf("BG."+f.Bm).C1(0(){f.Bb=m}).Bv().Cf("DT."+f.Bm).BS({Fo:"R.D$",GL:"Bf"})}k W(A=="c"||A=="l"){a U=C.DW("."+f.Da);U.DW().BZ("X-BA-Bb")}f.Bt=V.FV(f.Bt,0(V){t(V==B?h:V)});f.Bt[f.Bt.w]=B},C8:0(U){W(!U)t p;d(a V=R;V-S)}},Ce:0(B){B=B.u||B;W(B.Bn.DH()!="o")B=V("o",B.parentNode)[R];W(V.5.C8(B)||V.5.Cb==B)t;a A=V.5.3(B),E=V.5.g(A,"Fk");CX(A.BM,(E?E.By(B,[B,A]):{}));V.5.Bd(h,"");V.5.Cb=B;V.5.Ec(A);W(V.5.CT)B.Dd="";W(!V.5.BD){V.5.BD=V.5.GD(B);V.5.BD[S]+=B.offsetHeight}a C=p;V(B).Dz().C1(0(){C|=V(f).BS("B8")=="GP";t!C});W(C&&V.CB.opera){V.5.BD[R]-=2.B4.DA;V.5.BD[S]-=2.B4.DD}a D={n:V.5.BD[R],e:V.5.BD[S]};V.5.BD=h;A.BU=h;A.r.BS({B8:"DK",Fy:"block",e:"-1000px"});V.5.Bu(A);D=V.5.Fv(A,D,C);A.r.BS({B8:(V.5.CT&&V.C5?"static":(C?"GP":"DK")),Fy:"none",n:D.n+"DZ",e:D.e+"DZ"});W(!A.BV){a G=V.5.g(A,"EH")||"D9",F=V.5.g(A,"Cn"),U=0(){V.5.CG=m;W(V.CB.Ef&&BB(V.CB.DL,Y)S)B.r.BZ("X-5-C4-"+A).BS("Bx",(C*A)+"em");k B.r.Bp("X-5-C4-BN X-5-C4-C2 X-5-C4-Bg").Bx("");B.r[(U[R]!=S||U[S]!=S?"E9":"DV")+"Fd"]("X-5-C4");B.r[(f.g(B,"C0")?"E9":"DV")+"Fd"]("X-5-Fe");W(B.o&&B.o[R].CF!="DS"&&B==V.5.CP)V(B.o[R]).B0()},Fv:0(A,H,D){a B=A.r.Fs(),G=A.r.Fp(),E=A.o?A.o.Fs():R,C=A.o?A.o.Fp():R,F=(DE.GQ||2.B4.Dr||2.Bi.Dr)+V(2).DA(),U=(DE.GG||2.B4.DU||2.Bi.DU)+V(2).DD();H.n-=(f.g(A,"C0")?(B-E):R);H.n-=(D&&H.n==A.o.Ek().n)?V(2).DA():R;H.e-=(D&&H.e==(A.o.Ek().e+C))?V(2).DD():R;H.n-=(H.n+B>F&&F>B)?BR.Fz(H.n+B-F):R;H.e-=(H.e+G>U&&U>G)?BR.Fz(H.e+G+C*BN-U):R;t H},GD:0(U){CK(U&&(U.CF=="DS"||U.nodeType!=S))U=U.nextSibling;a A=V(U).Ek();t[A.n,A.e]},Bd:0(B,D){a A=f.CP;W(!A||(B&&A!=V.CC(B,B1)))t;W(A.CY)f.Db("#"+A.Z,f.Cy(A,A.6,A.BK,A.BH));A.CY=p;W(f.CG){D=(D!=h?D:f.g(A,"Cn"));a E=f.g(A,"EH"),U=0(){V.5.EB(A)};W(D!=""&&V.Dj&&V.Dj[E])A.r.D2(E,V.5.g(A,"EA"),D,U);k A.r[(D==""?"D2":(E=="slideDown"?"slideUp":(E=="fadeIn"?"fadeOut":"D2")))](D,U);W(D=="")f.EB(A);a C=f.g(A,"F8");W(C)C.By((A.o?A.o[R]:h),[(A.o?A.o.CI():""),A]);f.CG=p;f.Cb=h;W(f.CT){f.Bc.BS({B8:"DK",n:"R",e:"-FH"});W(V.C5){V.unblockUI();V("Bi").CW(f.r)}}f.CT=p}f.CP=h},EB:0(V){V.r.Bp(f.Eg).DQ(".X-5-Dl")},FK:0(U){W(!V.5.CP)t;a A=V(U.u);W((A.Dz("#"+V.5.EM).w==R)&&!A.B7(V.5.BT)&&!A.B7(V.5.Bm)&&V.5.CG&&!(V.5.CT&&V.C5))V.5.Bd(h,"")},BC:0(D,C,U){a B=V(D),A=f.3(B[R]);W(f.C8(B[R]))t;f.Dn(A,C+(U=="L"?f.g(A,"EJ"):R),U);f.Bu(A)},EU:0(C){a A=V(C),U=f.3(A[R]);W(f.g(U,"En")&&U.6){U.8=U.6;U.BY=U._=U.BK;U.BW=U.9=U.BH}k{a B=b j();U.8=B.x();U.BY=U._=B.1();U.BW=U.9=B.7()}f.C7(U);f.BC(A)},EE:0(C,D,U){a B=V(C),A=f.3(B[R]);A.Dh=p;A["DB"+(U=="L"?"FN":"GA")]=A["draw"+(U=="L"?"FN":"GA")]=BB(D.options[D.selectedIndex].Dd,Y);f.C7(A);f.BC(B)},EX:0(B){a A=V(B),U=f.3(A[R]);W(U.o&&U.Dh&&!V.CB.Ef)U.o[R].B0();U.Dh=!U.Dh},EI:0(E,A,C,U){a D=V(E);W(V(U).B7(f.EK)||f.C8(D[R]))t;a B=f.3(D[R]);B.8=B.6=V("P",U).Er();B._=B.BK=A;B.9=B.BH=C;W(B.CY)B.Co=B.Cu=B.Cw=h;f.Db(E,f.Cy(B,B.6,B.BK,B.BH));W(B.CY){B.BU=f.$(b j(B.BH,B.BK,B.6));f.Bu(B)}},Fx:0(B){a A=V(B),U=f.3(A[R]);U.CY=p;U.Co=U.Cu=U.Cw=U.BU=h;f.Db(A,"")},Db:0(D,C){a B=V(D),U=f.3(B[R]);C=(C!=h?C:f.Cy(U));W(U.o)U.o.CI(C);f.Dv(U);a A=f.g(U,"Dx");W(A)A.By((U.o?U.o[R]:h),[C,U]);k W(U.o)U.o.D0("change");W(U.BV)f.Bu(U);k W(!U.CY){f.Bd(h,f.g(U,"Cn"));f.Cb=U.o[R];W(BO(U.o[R])!="DI")U.o[R].B0();f.Cb=h}},Dv:0(U){a A=f.g(U,"FW");W(A){a C=f.g(U,"FD")||f.g(U,"C_"),B=f.Ei(U);FB=f.Ci(C,B,f.CN(U));V(A).C1(0(){V(f).CI(FB)})}},noWeekends:0(U){a V=U.Cc();t[(V>R&&Vb j(U.7(),C3-S,28)){B=b j(U.7()+S,S-S,Bg).Cc()||T;W(B>Bg&&(U.Cc()||T)R&&M="R"&&A.v(M)<="Cz"){V=V*Y+BB(A.v(M++),Y);B--}W(B==C)CZ"GC D3 EO B8 "+M;t V},K=0(V,C,G){a D=(F(V)?G:C),H=R;d(a E=R;ER&&M-S){V=S;B=BJ;do{a C=f.CO(N,V-S);W(B<=C)q;V++;B-=C}CK(m)}H=f.$(b j(N,V-S,B));W(H.7()!=N||H.1()+S!=V||H.x()!=B)CZ"Eh GK";t H},ATOM:"CE-Ds-Ca",COOKIE:"D, Ca L CE",ISO_8601:"CE-Ds-Ca",RFC_822:"D, Q L BE",RFC_850:"GW, Ca-L-BE",RFC_1036:"D, Q L BE",RFC_1123:"D, Q L CE",RFC_2822:"D, Q L CE",RSS:"D, Q L BE",TIMESTAMP:"@",W3C:"CE-Ds-Ca",Ci:0(L,F,V){W(!F)t"";a K=(V?V.B9:h)||f.4.B9,I=(V?V.B_:h)||f.4.B_,A=(V?V.Bw:h)||f.4.Bw,D=(V?V.B$:h)||f.4.B$,C=0(V){a U=(H+S=R;J--)BX+=f.CO(F.7(),J);U+=G("CA",BX,C2);q;i"Bh":U+=G("Bh",F.1()+S,BN);q;i"L":U+=E("L",F.1(),A,D);q;i"BE":U+=(C("BE")?F.7():(F.E5()%CHV?V:A);t A},Dp:0(U,B){a A=0(U){a V=b j();V.DF(V.x()+U);t V},V=0(F,C){a E=b j(),B=E.7(),V=E.1(),U=E.x(),D=/([+-]?[R-Cz]+)\\Be*(Q|D|Bs|CM|Bh|L|BE|CL)?/Dg,A=D.GM(F);CK(A){Cd(A[BN]||"Q"){i"Q":i"D":U+=BB(A[S],Y);q;i"Bs":i"CM":U+=BB(A[S],Y)*T;q;i"Bh":i"L":V+=BB(A[S],Y);U=BR.Bo(U,C(B,V));q;i"BE":i"CL":B+=BB(A[S],Y);U=BR.Bo(U,C(B,V));q}A=D.GM(F)}t b j(B,V,U)};U=(U==h?B:(BO U=="Cx"?V(U,f.CO):(BO U=="D3"?(F1(U)?B:A(U)):U)));U=(U&&U.EW()=="Eh j"?B:U);W(U){U.GI(R);U.setMinutes(R);U.setSeconds(R);U.setMilliseconds(R)}t f.$(U)},$:0(V){W(!V)t h;V.GI(V.GH()>C3?V.GH()+BN:R);t V},Ea:0(U,C,B){a A=!(C),D=U._,V=U.9;C=f.Dp(C,b j());U.8=U.6=C.x();U.BY=U._=U.BK=C.1();U.BW=U.9=U.BH=C.7();W(D!=U._||V!=U.9)f.C7(U);f.Dn(U);W(U.o)U.o.CI(A?"":f.Cy(U))},Ei:0(V){a U=(!V.BH||(V.o&&V.o.CI()=="")?h:f.$(b j(V.BH,V.BK,V.6)));t U},FS:0(N){a B6=b j();B6=f.$(b j(B6.7(),B6.1(),B6.x()));a D=f.g(N,"C0"),Bj=f.g(N,"GO"),Bs=f.g(N,"FZ"),A=f.g(N,"Fc"),Be=f.Dm(N),L=f.g(N,"EJ"),Bq=f.g(N,"Ch"),U=f.g(N,"CV"),H=(Be[R]!=S||Be[S]!=S),Cv=f.$((!N.6?b j(9999,Cz,Cz):b j(N.BH,N.BK,N.6))),CU=f.Bl(N,"Bo",m),B3=f.Bl(N,"Cj"),O=N.BY-L,J=N.BW;W(ODG){O--;W(O"+M+"

    ":(Bs?"":"

    "+M+"

    ")),B2=f.g(N,"Fq");B2=(!A?B2:f.Ci(B2,f.$(b j(J,O+Bq,S)),f.CN(N)));a D6=(f.Em(N,+S,J,O)?"

    "+B2+"

    ":(Bs?"":"

    "+B2+"

    ")),Cq=f.g(N,"Fi"),BX=(f.g(N,"En")&&N.6?Cv:B6);Cq=(!A?Cq:f.Ci(Cq,BX,f.CN(N)));a ED=(!N.BV?""+f.g(N,"GT")+"":""),CL=(Bj)?""+(D?ED:"")+(f.Eo(N,BX)?""+Cq+"":"")+(D?"":ED)+"":"",Bz=BB(f.g(N,"GR"),Y);Bz=(F1(Bz)?R:Bz);a I=f.g(N,"B_"),BE=f.g(N,"B9"),Fj=f.g(N,"F9"),Dg=f.g(N,"B$"),E=f.g(N,"Bw"),Bh=f.g(N,"Fm"),B=f.g(N,"F_"),GV=f.g(N,"Fg")||f.DO,D5=N.Co?f.$(b j(N.Cw,N.Cu,N.Co)):Cv,D7=f.DJ(N),C="";d(a Cl=R;Cl"}BL+=""+(/BP|n/.Ff(CQ)&&Cl==R?(D?D6:D1):"")+(/BP|D8/.Ff(CQ)&&Cl==R?(D?D1:D6):"")+f.FY(N,O,J,CU,B3,DY,Cl>R||F>R,Dg,E)+""+"";a Q="";d(a Bk=R;Bk=D$?" s=\\"X-5-E1-Bv\\"":"")+">"+""+Fj[BF]+""}BL+=Q+"";a Dy=f.CO(J,O);W(J==N.9&&O==N._)N.8=BR.Bo(N.8,Dy);a CA=(f.FU(J,O)-Bz+T)%T,FI=(H?Dq:BR.ceil((CA+Dy)/T)),G=f.$(b j(J,O,S-CA));d(a Ee=R;Ee";a Eb="";d(Bk=R;BkB3);Eb+="=D$?" X-5-E1-Bv":"")+(K?" X-5-other-EV":"")+((G.y()==DY.y()&&O==N._&&N.DP)||(D7.y()==G.y()&&D7.y()==DY.y())?" "+f.Dk:"")+(P?" "+f.EK+" X-BA-Bb":"")+(K&&!B?"":" "+CM[S]+(G.y()>=Cv.y()&&G.y()<=D5.y()?" "+f.ER:"")+(G.y()==B6.y()?" X-5-today":""))+"\\""+((!K||B)&&CM[BN]?" Br=\\""+CM[BN]+"\\"":"")+(P?"":" CS=\\"Ba.5.EI(\'#"+N.Z+"\',"+O+","+J+", f);t p;\\"")+">"+(K?(B?G.x():"&#Ej;"):(P?""+G.x()+"":"

    =Cv.y()&&G.y()<=D5.y()?" X-BA-active":"")+"\\" href=\\"#\\">"+G.x()+"

    "))+"
    ";G.DF(G.x()+S);G=f.$(G)}BL+=Eb+""}O++;W(O>FX){O=R;J++}BL+="
    "+(H?""+((Be[R]>R&&F==Be[S]-S)?"":""):"");BJ+=BL}C+=BJ}C+=CL+(V.CB.Ef&&BB(V.CB.DL,Y)
    ":"");N.DP=p;t C},FY:0(U,C,M,H,J,N,K,E,B){H=(U.BU&&H&&N",F="";W(K||!D)F+=""+E[C]+" ";k{a G=(H&&H.7()==M),BX=(J&&J.7()==M);F+="";d(a V=R;V=H.1())&&(!BX||V<=J.1()))F+=""+B[V]+"";F+=""}W(!Bj)A+=F+((K||D||BJ)&&(!(D&&BJ))?"&#Ej;":"");W(K||!BJ)A+=""+M+"";k{a BF=f.g(U,"FG").split(":"),L=R,I=R;W(BF.w!=BN){L=M-Y;I=M+Y}k W(BF[R].v(R)=="+"||BF[R].v(R)=="-"){L=M+BB(BF[R],Y);I=M+BB(BF[S],Y)}k{L=BB(BF[R],Y);I=BB(BF[S],Y)}L=(H?BR.Cj(L,H.7()):L);I=(J?BR.Bo(I,J.7()):I);A+="";d(;L<=I;L++)A+=""+L+"";A+=""}W(Bj)A+=(K||D||BJ?"&#Ej;":"")+F;A+="";t A},Dn:0(C,F,U){a D=C.BW+(U=="CL"?F:R),V=C.BY+(U=="L"?F:R),B=BR.Bo(C.8,f.CO(D,V))+(U=="D"?F:R),E=f.$(b j(D,V,B)),G=f.Bl(C,"Bo",m),A=f.Bl(C,"Cj");E=(G&&EA?A:E);C.8=E.x();C.BY=C._=E.1();C.BW=C.9=E.7();W(U=="L"||U=="CL")f.C7(C)},C7:0(V){a U=f.g(V,"GN");W(U)U.By((V.o?V.o[R]:h),[V.9,V._+S,V])},Dm:0(U){a V=f.g(U,"E3");t(V==h?[S,S]:(BO V=="D3"?[S,V]:V))},Bl:0(U,B,V){a A=f.Dp(f.g(U,B+"j"),h);t(!V||!U.BU?A:(!A||U.BU>A?U.BU:A))},CO:0(U,V){t Ez-b j(U,V,Ez).x()},FU:0(U,V){t b j(U,V,S).Cc()},Em:0(A,C,U,D){a V=f.Dm(A),B=f.$(b j(U,D+(C=C)&&(!V||B<=V))},CN:0(V){a U=f.g(V,"C$");U=(BO U!="Cx"?U:b j().7()%CH+BB(U,Y));t{C$:U,B9:f.g(V,"B9"),B_:f.g(V,"B_"),Bw:f.g(V,"Bw"),B$:f.g(V,"B$")}},Cy:0(A,U,V,B){W(!U){A.6=A.8;A.BK=A._;A.BH=A.9}a C=(U?(BO U=="DI"?U:f.$(b j(B,V,U))):f.$(b j(A.BH,A.BK,A.6)));t f.Ci(f.g(A,"C_"),C,f.CN(A))}});0 CX(A,U){V.Ct(A,U);d(a B Fu U)W(U[B]==h||U[B]==EY)A[B]=U[B];t A}0 isArray(U){t(U&&((V.CB.safari&&BO U=="DI"&&U.w)||(U.GB&&U.GB.EW().match(/\\Ft\\(\\)/))))}V.fn.5=0(A){W(!V.5.Eq){V(2).mousedown(V.5.FK).DC("Bi").CW(V.5.r);V.5.Eq=m}a U=Ft.F0.slice.call(EC,S);W(BO A=="Cx"&&(A=="isDisabled"||A=="x"))t V.5["U"+A+"C6"].By(V.5,[f[R]].F4(U));t f.C1(0(){BO A=="Cx"?V.5["U"+A+"C6"].By(V.5,[f].F4(U)):V.5.F3(f,A)})};V.5=b C6();V.5.Eq=p;V.5.Ed=b j().y();V.5.DL="S.T";DE.Ba=V})(jQuery)','M|N|O|S|a|d|0|1|7|_|$|if|ui|10|id|var|new|div|for|top|this|_get|null|case|Date|else|span|true|left|input|false|break|dpDiv|class|return|target|charAt|length|getDate|getTime|ctrlKey|function|getMonth|document|_getInst|_defaults|datepicker|currentDay|getFullYear|selectedDay|selectedYear|selectedMonth|_daylightSavingAdjust|state|parseInt|_adjustDate|_pos|y|Q|button|currentYear|metaKey|P|currentMonth|n|settings|2|typeof|all|corner|Math|css|markerClassName|rangeStart|inline|drawYear|L|drawMonth|addClass|DP_jQuery|disabled|_dialogInput|_hideDatepicker|s|default|4|m|body|R|T|_getMinMaxDate|_triggerClass|nodeName|min|removeClass|e|title|w|_disabledInputs|_updateDatepicker|end|monthNamesShort|width|apply|h|focus|PROP_NAME|x|j|documentElement|icon|u|hasClass|position|dayNamesShort|dayNames|monthNames|o|browser|data|hover|yy|type|_datepickerShowing|100|val|next|while|Y|W|_getFormatConfig|_getDaysInMonth|_curInst|c|prev|onclick|_inDialog|i|stepBigMonths|append|extendRemove|stayOpen|throw|dd|_lastInput|getDay|switch|_showDatepicker|siblings|bind|stepMonths|formatDate|max|inlineSettings|k|widget|duration|endDay|height|X|defaultDate|td|extend|endMonth|v|endYear|string|_formatDate|9|isRTL|each|3|12|multi|blockUI|Datepicker|_notifyChange|_isDisabledDatepicker|indexOf|dateFormat|shortYearCutoff|scrollLeft|selected|find|scrollTop|window|setDate|Z|toLowerCase|object|_getDefaultDate|absolute|version|attrName|option|iso8601Week|_keyEvent|unbind|_doKeyDown|hidden|img|clientHeight|remove|children|tr|p|px|_inlineClass|_selectDate|helper|value|inst|className|g|_selectingMonthYear|triangle|effects|_dayOverClass|calendar|_getNumberOfMonths|_adjustInstDate|attrValue|_determineDate|6|clientWidth|mm|iframe|select|_updateAlternate|circle|onSelect|V|parents|trigger|l|hide|number|keyCode|b|f|_0|right|show|catch|5|showOptions|_tidyDialog|arguments|r|_selectMonthYear|src|cover|showAnim|_selectDay|showCurrentAtPos|_unselectableClass|content|_mainDivId|regional|at|clearfix|_appendClass|_currentClass|keydown|log|_gotoToday|month|toString|_clickMonthYear|undefined|_newInst|_setDate|q|_setDateFromField|uuid|z|msie|_dialogClass|Invalid|_getDate|xa0|offset|try|_canAdjustMonth|gotoCurrent|_isInRange|_doKeyPress|initialized|html|attr|after|empty|showOn|_possibleChars|header|keypress|32|parseDate|week|appendText|numberOfMonths|_connectDatepicker|getYear|thead|priority|buttonImageOnly|add|current|year|mouseover|dateStr|buttonText|altFormat|charCode|_dialogInst|yearRange|100px|t|getData|_checkExternalClick|onchange|th|Month|originalEvent|prevText|group|alt|_generateHTML|constrainInput|_getFirstDayOfMonth|map|altField|11|_generateMonthYearHeader|hideIfNoPrevNext|altKey|showMonthAfterYear|navigationAsDateFormat|Class|rtl|test|calculateWeek|debug|currentText|$0|beforeShow|36|beforeShowDay|tbody|opacity|outerHeight|nextText|dp|outerWidth|Array|in|_checkOffset|both|_clearDate|display|abs|prototype|isNaN|_optionDatepicker|_attachDatepicker|concat|before|changeMonth|May|onClose|dayNamesMin|showOtherMonths|lookAhead|Year|constructor|Missing|_findPos|setData|changeYear|innerHeight|getHours|setHours|table|date|cursor|exec|onChangeMonthYear|showButtonPanel|fixed|innerWidth|firstDay|buttonImage|closeText|_inlineDatepicker|U|DD|Fr'.split('|'),397,407,/[\w\$]+/g,{},{},[])) \ No newline at end of file diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.dialog.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.dialog.js deleted file mode 100644 index 99d16f0..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.dialog.js +++ /dev/null @@ -1,650 +0,0 @@ -/* - * jQuery UI Dialog 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Dialog - * - * Depends: - * ui.core.js - * ui.draggable.js - * ui.resizable.js - */ -(function($) { - -var setDataSwitch = { - dragStart: "start.draggable", - drag: "drag.draggable", - dragStop: "stop.draggable", - maxHeight: "maxHeight.resizable", - minHeight: "minHeight.resizable", - maxWidth: "maxWidth.resizable", - minWidth: "minWidth.resizable", - resizeStart: "start.resizable", - resize: "drag.resizable", - resizeStop: "stop.resizable" - }, - - uiDialogClasses = - 'ui-dialog ' + - 'ui-widget ' + - 'ui-widget-content ' + - 'ui-corner-all '; - -$.widget("ui.dialog", { - - _init: function() { - this.originalTitle = this.element.attr('title'); - - var self = this, - options = this.options, - - title = options.title || this.originalTitle || ' ', - titleId = $.ui.dialog.getTitleId(this.element), - - uiDialog = (this.uiDialog = $('
    ')) - .appendTo(document.body) - .hide() - .addClass(uiDialogClasses + options.dialogClass) - .css({ - position: 'absolute', - overflow: 'hidden', - zIndex: options.zIndex - }) - // setting tabIndex makes the div focusable - // setting outline to 0 prevents a border on focus in Mozilla - .attr('tabIndex', -1).css('outline', 0).keydown(function(event) { - (options.closeOnEscape && event.keyCode - && event.keyCode == $.ui.keyCode.ESCAPE && self.close(event)); - }) - .attr({ - role: 'dialog', - 'aria-labelledby': titleId - }) - .mousedown(function(event) { - self.moveToTop(false, event); - }), - - uiDialogContent = this.element - .show() - .removeAttr('title') - .addClass( - 'ui-dialog-content ' + - 'ui-widget-content') - .appendTo(uiDialog), - - uiDialogTitlebar = (this.uiDialogTitlebar = $('
    ')) - .addClass( - 'ui-dialog-titlebar ' + - 'ui-widget-header ' + - 'ui-corner-all ' + - 'ui-helper-clearfix' - ) - .prependTo(uiDialog), - - uiDialogTitlebarClose = $('') - .addClass( - 'ui-dialog-titlebar-close ' + - 'ui-corner-all' - ) - .attr('role', 'button') - .hover( - function() { - uiDialogTitlebarClose.addClass('ui-state-hover'); - }, - function() { - uiDialogTitlebarClose.removeClass('ui-state-hover'); - } - ) - .focus(function() { - uiDialogTitlebarClose.addClass('ui-state-focus'); - }) - .blur(function() { - uiDialogTitlebarClose.removeClass('ui-state-focus'); - }) - .mousedown(function(ev) { - ev.stopPropagation(); - }) - .click(function(event) { - self.close(event); - return false; - }) - .appendTo(uiDialogTitlebar), - - uiDialogTitlebarCloseText = (this.uiDialogTitlebarCloseText = $('')) - .addClass( - 'ui-icon ' + - 'ui-icon-closethick' - ) - .text(options.closeText) - .appendTo(uiDialogTitlebarClose), - - uiDialogTitle = $('') - .addClass('ui-dialog-title') - .attr('id', titleId) - .html(title) - .prependTo(uiDialogTitlebar); - - uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection(); - - (options.draggable && $.fn.draggable && this._makeDraggable()); - (options.resizable && $.fn.resizable && this._makeResizable()); - - this._createButtons(options.buttons); - this._isOpen = false; - - (options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe()); - (options.autoOpen && this.open()); - - }, - - destroy: function() { - (this.overlay && this.overlay.destroy()); - this.uiDialog.hide(); - this.element - .unbind('.dialog') - .removeData('dialog') - .removeClass('ui-dialog-content ui-widget-content') - .hide().appendTo('body'); - this.uiDialog.remove(); - - (this.originalTitle && this.element.attr('title', this.originalTitle)); - }, - - close: function(event) { - var self = this; - - if (false === self._trigger('beforeclose', event)) { - return; - } - - (self.overlay && self.overlay.destroy()); - self.uiDialog.unbind('keypress.ui-dialog'); - - (self.options.hide - ? self.uiDialog.hide(self.options.hide, function() { - self._trigger('close', event); - }) - : self.uiDialog.hide() && self._trigger('close', event)); - - $.ui.dialog.overlay.resize(); - - self._isOpen = false; - }, - - isOpen: function() { - return this._isOpen; - }, - - // the force parameter allows us to move modal dialogs to their correct - // position on open - moveToTop: function(force, event) { - - if ((this.options.modal && !force) - || (!this.options.stack && !this.options.modal)) { - return this._trigger('focus', event); - } - - if (this.options.zIndex > $.ui.dialog.maxZ) { - $.ui.dialog.maxZ = this.options.zIndex; - } - (this.overlay && this.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = ++$.ui.dialog.maxZ)); - - //Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed. - // http://ui.jquery.com/bugs/ticket/3193 - var saveScroll = { scrollTop: this.element.attr('scrollTop'), scrollLeft: this.element.attr('scrollLeft') }; - this.uiDialog.css('z-index', ++$.ui.dialog.maxZ); - this.element.attr(saveScroll); - this._trigger('focus', event); - }, - - open: function() { - if (this._isOpen) { return; } - - var options = this.options, - uiDialog = this.uiDialog; - - this.overlay = options.modal ? new $.ui.dialog.overlay(this) : null; - (uiDialog.next().length && uiDialog.appendTo('body')); - this._size(); - this._position(options.position); - uiDialog.show(options.show); - this.moveToTop(true); - - // prevent tabbing out of modal dialogs - (options.modal && uiDialog.bind('keypress.ui-dialog', function(event) { - if (event.keyCode != $.ui.keyCode.TAB) { - return; - } - - var tabbables = $(':tabbable', this), - first = tabbables.filter(':first')[0], - last = tabbables.filter(':last')[0]; - - if (event.target == last && !event.shiftKey) { - setTimeout(function() { - first.focus(); - }, 1); - } else if (event.target == first && event.shiftKey) { - setTimeout(function() { - last.focus(); - }, 1); - } - })); - - // set focus to the first tabbable element in the content area or the first button - // if there are no tabbable elements, set focus on the dialog itself - $([]) - .add(uiDialog.find('.ui-dialog-content :tabbable:first')) - .add(uiDialog.find('.ui-dialog-buttonpane :tabbable:first')) - .add(uiDialog) - .filter(':first') - .focus(); - - this._trigger('open'); - this._isOpen = true; - }, - - _createButtons: function(buttons) { - var self = this, - hasButtons = false, - uiDialogButtonPane = $('
    ') - .addClass( - 'ui-dialog-buttonpane ' + - 'ui-widget-content ' + - 'ui-helper-clearfix' - ); - - // if we already have a button pane, remove it - this.uiDialog.find('.ui-dialog-buttonpane').remove(); - - (typeof buttons == 'object' && buttons !== null && - $.each(buttons, function() { return !(hasButtons = true); })); - if (hasButtons) { - $.each(buttons, function(name, fn) { - $('') - .addClass( - 'ui-state-default ' + - 'ui-corner-all' - ) - .text(name) - .click(function() { fn.apply(self.element[0], arguments); }) - .hover( - function() { - $(this).addClass('ui-state-hover'); - }, - function() { - $(this).removeClass('ui-state-hover'); - } - ) - .focus(function() { - $(this).addClass('ui-state-focus'); - }) - .blur(function() { - $(this).removeClass('ui-state-focus'); - }) - .appendTo(uiDialogButtonPane); - }); - uiDialogButtonPane.appendTo(this.uiDialog); - } - }, - - _makeDraggable: function() { - var self = this, - options = this.options, - heightBeforeDrag; - - this.uiDialog.draggable({ - cancel: '.ui-dialog-content', - handle: '.ui-dialog-titlebar', - containment: 'document', - start: function() { - heightBeforeDrag = options.height; - $(this).height($(this).height()).addClass("ui-dialog-dragging"); - (options.dragStart && options.dragStart.apply(self.element[0], arguments)); - }, - drag: function() { - (options.drag && options.drag.apply(self.element[0], arguments)); - }, - stop: function() { - $(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag); - (options.dragStop && options.dragStop.apply(self.element[0], arguments)); - $.ui.dialog.overlay.resize(); - } - }); - }, - - _makeResizable: function(handles) { - handles = (handles === undefined ? this.options.resizable : handles); - var self = this, - options = this.options, - resizeHandles = typeof handles == 'string' - ? handles - : 'n,e,s,w,se,sw,ne,nw'; - - this.uiDialog.resizable({ - cancel: '.ui-dialog-content', - alsoResize: this.element, - maxWidth: options.maxWidth, - maxHeight: options.maxHeight, - minWidth: options.minWidth, - minHeight: options.minHeight, - start: function() { - $(this).addClass("ui-dialog-resizing"); - (options.resizeStart && options.resizeStart.apply(self.element[0], arguments)); - }, - resize: function() { - (options.resize && options.resize.apply(self.element[0], arguments)); - }, - handles: resizeHandles, - stop: function() { - $(this).removeClass("ui-dialog-resizing"); - options.height = $(this).height(); - options.width = $(this).width(); - (options.resizeStop && options.resizeStop.apply(self.element[0], arguments)); - $.ui.dialog.overlay.resize(); - } - }) - .find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se'); - }, - - _position: function(pos) { - var wnd = $(window), doc = $(document), - pTop = doc.scrollTop(), pLeft = doc.scrollLeft(), - minTop = pTop; - - if ($.inArray(pos, ['center','top','right','bottom','left']) >= 0) { - pos = [ - pos == 'right' || pos == 'left' ? pos : 'center', - pos == 'top' || pos == 'bottom' ? pos : 'middle' - ]; - } - if (pos.constructor != Array) { - pos = ['center', 'middle']; - } - if (pos[0].constructor == Number) { - pLeft += pos[0]; - } else { - switch (pos[0]) { - case 'left': - pLeft += 0; - break; - case 'right': - pLeft += wnd.width() - this.uiDialog.outerWidth(); - break; - default: - case 'center': - pLeft += (wnd.width() - this.uiDialog.outerWidth()) / 2; - } - } - if (pos[1].constructor == Number) { - pTop += pos[1]; - } else { - switch (pos[1]) { - case 'top': - pTop += 0; - break; - case 'bottom': - pTop += wnd.height() - this.uiDialog.outerHeight(); - break; - default: - case 'middle': - pTop += (wnd.height() - this.uiDialog.outerHeight()) / 2; - } - } - - // prevent the dialog from being too high (make sure the titlebar - // is accessible) - pTop = Math.max(pTop, minTop); - this.uiDialog.css({top: pTop, left: pLeft}); - }, - - _setData: function(key, value){ - (setDataSwitch[key] && this.uiDialog.data(setDataSwitch[key], value)); - switch (key) { - case "buttons": - this._createButtons(value); - break; - case "closeText": - this.uiDialogTitlebarCloseText.text(value); - break; - case "dialogClass": - this.uiDialog - .removeClass(this.options.dialogClass) - .addClass(uiDialogClasses + value); - break; - case "draggable": - (value - ? this._makeDraggable() - : this.uiDialog.draggable('destroy')); - break; - case "height": - this.uiDialog.height(value); - break; - case "position": - this._position(value); - break; - case "resizable": - var uiDialog = this.uiDialog, - isResizable = this.uiDialog.is(':data(resizable)'); - - // currently resizable, becoming non-resizable - (isResizable && !value && uiDialog.resizable('destroy')); - - // currently resizable, changing handles - (isResizable && typeof value == 'string' && - uiDialog.resizable('option', 'handles', value)); - - // currently non-resizable, becoming resizable - (isResizable || this._makeResizable(value)); - break; - case "title": - $(".ui-dialog-title", this.uiDialogTitlebar).html(value || ' '); - break; - case "width": - this.uiDialog.width(value); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - }, - - _size: function() { - /* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content - * divs will both have width and height set, so we need to reset them - */ - var options = this.options; - - // reset content sizing - this.element.css({ - height: 0, - minHeight: 0, - width: 'auto' - }); - - // reset wrapper sizing - // determine the height of all the non-content elements - var nonContentHeight = this.uiDialog.css({ - height: 'auto', - width: options.width - }) - .height(); - - this.element - .css({ - minHeight: Math.max(options.minHeight - nonContentHeight, 0), - height: options.height == 'auto' - ? 'auto' - : Math.max(options.height - nonContentHeight, 0) - }); - } -}); - -$.extend($.ui.dialog, { - version: "1.7", - defaults: { - autoOpen: true, - bgiframe: false, - buttons: {}, - closeOnEscape: true, - closeText: 'close', - dialogClass: '', - draggable: true, - hide: null, - height: 'auto', - maxHeight: false, - maxWidth: false, - minHeight: 150, - minWidth: 150, - modal: false, - position: 'center', - resizable: true, - show: null, - stack: true, - title: '', - width: 300, - zIndex: 1000 - }, - - getter: 'isOpen', - - uuid: 0, - maxZ: 0, - - getTitleId: function($el) { - return 'ui-dialog-title-' + ($el.attr('id') || ++this.uuid); - }, - - overlay: function(dialog) { - this.$el = $.ui.dialog.overlay.create(dialog); - } -}); - -$.extend($.ui.dialog.overlay, { - instances: [], - maxZ: 0, - events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','), - function(event) { return event + '.dialog-overlay'; }).join(' '), - create: function(dialog) { - if (this.instances.length === 0) { - // prevent use of anchors and inputs - // we use a setTimeout in case the overlay is created from an - // event that we're going to be cancelling (see #2804) - setTimeout(function() { - $(document).bind($.ui.dialog.overlay.events, function(event) { - var dialogZ = $(event.target).parents('.ui-dialog').css('zIndex') || 0; - return (dialogZ > $.ui.dialog.overlay.maxZ); - }); - }, 1); - - // allow closing by pressing the escape key - $(document).bind('keydown.dialog-overlay', function(event) { - (dialog.options.closeOnEscape && event.keyCode - && event.keyCode == $.ui.keyCode.ESCAPE && dialog.close(event)); - }); - - // handle window resize - $(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize); - } - - var $el = $('
    ').appendTo(document.body) - .addClass('ui-widget-overlay').css({ - width: this.width(), - height: this.height() - }); - - (dialog.options.bgiframe && $.fn.bgiframe && $el.bgiframe()); - - this.instances.push($el); - return $el; - }, - - destroy: function($el) { - this.instances.splice($.inArray(this.instances, $el), 1); - - if (this.instances.length === 0) { - $([document, window]).unbind('.dialog-overlay'); - } - - $el.remove(); - }, - - height: function() { - // handle IE 6 - if ($.browser.msie && $.browser.version < 7) { - var scrollHeight = Math.max( - document.documentElement.scrollHeight, - document.body.scrollHeight - ); - var offsetHeight = Math.max( - document.documentElement.offsetHeight, - document.body.offsetHeight - ); - - if (scrollHeight < offsetHeight) { - return $(window).height() + 'px'; - } else { - return scrollHeight + 'px'; - } - // handle "good" browsers - } else { - return $(document).height() + 'px'; - } - }, - - width: function() { - // handle IE 6 - if ($.browser.msie && $.browser.version < 7) { - var scrollWidth = Math.max( - document.documentElement.scrollWidth, - document.body.scrollWidth - ); - var offsetWidth = Math.max( - document.documentElement.offsetWidth, - document.body.offsetWidth - ); - - if (scrollWidth < offsetWidth) { - return $(window).width() + 'px'; - } else { - return scrollWidth + 'px'; - } - // handle "good" browsers - } else { - return $(document).width() + 'px'; - } - }, - - resize: function() { - /* If the dialog is draggable and the user drags it past the - * right edge of the window, the document becomes wider so we - * need to stretch the overlay. If the user then drags the - * dialog back to the left, the document will become narrower, - * so we need to shrink the overlay to the appropriate size. - * This is handled by shrinking the overlay before setting it - * to the full document size. - */ - var $overlays = $([]); - $.each($.ui.dialog.overlay.instances, function() { - $overlays = $overlays.add(this); - }); - - $overlays.css({ - width: 0, - height: 0 - }).css({ - width: $.ui.dialog.overlay.width(), - height: $.ui.dialog.overlay.height() - }); - } -}); - -$.extend($.ui.dialog.overlay.prototype, { - destroy: function() { - $.ui.dialog.overlay.destroy(this.$el); - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.draggable.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.draggable.js deleted file mode 100644 index 6a563e8..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('
    ') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.droppable.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.droppable.js deleted file mode 100644 index d4b17f6..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(accept); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.progressbar.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.progressbar.js deleted file mode 100644 index 14a73df..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.progressbar.js +++ /dev/null @@ -1,112 +0,0 @@ -/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.progressbar", { - - _init: function() { - - this.element - .addClass("ui-progressbar" - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all") - .attr({ - role: "progressbar", - "aria-valuemin": this._valueMin(), - "aria-valuemax": this._valueMax(), - "aria-valuenow": this._value() - }); - - this.valueDiv = $('
    ').appendTo(this.element); - - 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") - .removeData("progressbar") - .unbind(".progressbar"); - - this.valueDiv.remove(); - - $.widget.prototype.destroy.apply(this, arguments); - - }, - - value: function(newValue) { - arguments.length && this._setData("value", newValue); - return this._value(); - }, - - _setData: function(key, value) { - - switch (key) { - case 'value': - this.options.value = value; - this._refreshValue(); - this._trigger('change', null, {}); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _valueMin: function() { - var valueMin = 0; - return valueMin; - }, - - _valueMax: function() { - var valueMax = 100; - return valueMax; - }, - - _refreshValue: function() { - var value = this.value(); - this.valueDiv[value == this._valueMax() ? 'addClass' : 'removeClass']("ui-corner-right"); - this.valueDiv.width(value + '%'); - this.element.attr("aria-valuenow", value); - } - -}); - -$.extend($.ui.progressbar, { - version: "1.7", - defaults: { - value: 0 - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.resizable.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.resizable.js deleted file mode 100644 index 0e4b894..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.resizable.js +++ /dev/null @@ -1,800 +0,0 @@ -/* - * jQuery UI Resizable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Resizables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.resizable", $.extend({}, $.ui.mouse, { - - _init: function() { - - var self = this, o = this.options; - this.element.addClass("ui-resizable"); - - $.extend(this, { - _aspectRatio: !!(o.aspectRatio), - aspectRatio: o.aspectRatio, - originalElement: this.element, - _proportionallyResizeElements: [], - _helper: o.helper || o.ghost || o.animate ? o.helper || 'ui-resizable-helper' : null - }); - - //Wrap the element if it cannot hold child nodes - if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)) { - - //Opera fix for relative positioning - if (/relative/.test(this.element.css('position')) && $.browser.opera) - this.element.css({ position: 'relative', top: 'auto', left: 'auto' }); - - //Create a wrapper element and set the wrapper to the new current internal element - this.element.wrap( - $('
    ').css({ - position: this.element.css('position'), - width: this.element.outerWidth(), - height: this.element.outerHeight(), - top: this.element.css('top'), - left: this.element.css('left') - }) - ); - - //Overwrite the original this.element - this.element = this.element.parent().data( - "resizable", this.element.data('resizable') - ); - - this.elementIsWrapper = true; - - //Move margins to the wrapper - 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}); - - //Prevent Safari textarea resize - this.originalResizeStyle = this.originalElement.css('resize'); - this.originalElement.css('resize', 'none'); - - //Push the actual element to our proportionallyResize internal array - this._proportionallyResizeElements.push(this.originalElement.css({ position: 'static', zoom: 1, display: 'block' })); - - // avoid IE jump (hard set the margin) - this.originalElement.css({ margin: this.originalElement.css('margin') }); - - // fix handlers offset - this._proportionallyResize(); - - } - - this.handles = o.handles || (!$('.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 n = this.handles.split(","); this.handles = {}; - - for(var i = 0; i < n.length; i++) { - - var handle = $.trim(n[i]), hname = 'ui-resizable-'+handle; - var axis = $('
    '); - - // increase zIndex of sw, se, ne, nw axis - //TODO : this modifies original option - if(/sw|se|ne|nw/.test(handle)) axis.css({ zIndex: ++o.zIndex }); - - //TODO : What's going on here? - if ('se' == handle) { - axis.addClass('ui-icon ui-icon-gripsmall-diagonal-se'); - }; - - //Insert into internal handles object and append to element - this.handles[handle] = '.ui-resizable-'+handle; - this.element.append(axis); - } - - } - - this._renderAxis = function(target) { - - target = target || this.element; - - for(var i in this.handles) { - - if(this.handles[i].constructor == String) - this.handles[i] = $(this.handles[i], this.element).show(); - - //Apply pad to wrapper element, needed to fix axis position (textarea, inputs, scrolls) - if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) { - - var axis = $(this.handles[i], this.element), padWrapper = 0; - - //Checking the correct pad and border - padWrapper = /sw|ne|nw|se|n|s/.test(i) ? axis.outerHeight() : axis.outerWidth(); - - //The padding type i have to apply... - var padPos = [ 'padding', - /ne|nw|n/.test(i) ? 'Top' : - /se|sw|s/.test(i) ? 'Bottom' : - /^e$/.test(i) ? 'Right' : 'Left' ].join(""); - - target.css(padPos, padWrapper); - - this._proportionallyResize(); - - } - - //TODO: What's that good for? There's not anything to be executed left - if(!$(this.handles[i]).length) - continue; - - } - }; - - //TODO: make renderAxis a prototype function - this._renderAxis(this.element); - - this._handles = $('.ui-resizable-handle', this.element) - .disableSelection(); - - //Matching axis name - this._handles.mouseover(function() { - if (!self.resizing) { - if (this.className) - var axis = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i); - //Axis, default = se - self.axis = axis && axis[1] ? axis[1] : 'se'; - } - }); - - //If we want to auto hide the elements - if (o.autoHide) { - this._handles.hide(); - $(this.element) - .addClass("ui-resizable-autohide") - .hover(function() { - $(this).removeClass("ui-resizable-autohide"); - self._handles.show(); - }, - function(){ - if (!self.resizing) { - $(this).addClass("ui-resizable-autohide"); - self._handles.hide(); - } - }); - } - - //Initialize the mouse interaction - this._mouseInit(); - - }, - - destroy: function() { - - this._mouseDestroy(); - - var _destroy = function(exp) { - $(exp).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing") - .removeData("resizable").unbind(".resizable").find('.ui-resizable-handle').remove(); - }; - - //TODO: Unwrap at same DOM position - if (this.elementIsWrapper) { - _destroy(this.element); - var wrapper = this.element; - wrapper.parent().append( - this.originalElement.css({ - position: wrapper.css('position'), - width: wrapper.outerWidth(), - height: wrapper.outerHeight(), - top: wrapper.css('top'), - left: wrapper.css('left') - }) - ).end().remove(); - } - - this.originalElement.css('resize', this.originalResizeStyle); - _destroy(this.originalElement); - - }, - - _mouseCapture: function(event) { - - var handle = false; - for(var i in this.handles) { - if($(this.handles[i])[0] == event.target) handle = true; - } - - return this.options.disabled || !!handle; - - }, - - _mouseStart: function(event) { - - var o = this.options, iniPos = this.element.position(), el = this.element; - - this.resizing = true; - this.documentScroll = { top: $(document).scrollTop(), left: $(document).scrollLeft() }; - - // bugfix for http://dev.jquery.com/ticket/1749 - if (el.is('.ui-draggable') || (/absolute/).test(el.css('position'))) { - el.css({ position: 'absolute', top: iniPos.top, left: iniPos.left }); - } - - //Opera fixing relative position - if ($.browser.opera && (/relative/).test(el.css('position'))) - el.css({ position: 'relative', top: 'auto', left: 'auto' }); - - this._renderProxy(); - - var curleft = num(this.helper.css('left')), curtop = num(this.helper.css('top')); - - if (o.containment) { - curleft += $(o.containment).scrollLeft() || 0; - curtop += $(o.containment).scrollTop() || 0; - } - - //Store needed variables - this.offset = this.helper.offset(); - this.position = { left: curleft, top: curtop }; - this.size = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() }; - this.originalSize = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() }; - this.originalPosition = { left: curleft, top: curtop }; - this.sizeDiff = { width: el.outerWidth() - el.width(), height: el.outerHeight() - el.height() }; - this.originalMousePosition = { left: event.pageX, top: event.pageY }; - - //Aspect Ratio - this.aspectRatio = (typeof o.aspectRatio == 'number') ? o.aspectRatio : ((this.originalSize.width / this.originalSize.height) || 1); - - var cursor = $('.ui-resizable-' + this.axis).css('cursor'); - $('body').css('cursor', cursor == 'auto' ? this.axis + '-resize' : cursor); - - el.addClass("ui-resizable-resizing"); - this._propagate("start", event); - return true; - }, - - _mouseDrag: function(event) { - - //Increase performance, avoid regex - var el = this.helper, o = this.options, props = {}, - self = this, smp = this.originalMousePosition, a = this.axis; - - var dx = (event.pageX-smp.left)||0, dy = (event.pageY-smp.top)||0; - var trigger = this._change[a]; - if (!trigger) return false; - - // Calculate the attrs that will be change - var data = trigger.apply(this, [event, dx, dy]), ie6 = $.browser.msie && $.browser.version < 7, csdif = this.sizeDiff; - - if (this._aspectRatio || event.shiftKey) - data = this._updateRatio(data, event); - - data = this._respectSize(data, event); - - // plugins callbacks need to be called first - this._propagate("resize", event); - - el.css({ - top: this.position.top + "px", left: this.position.left + "px", - width: this.size.width + "px", height: this.size.height + "px" - }); - - if (!this._helper && this._proportionallyResizeElements.length) - this._proportionallyResize(); - - this._updateCache(data); - - // calling the user callback at the end - this._trigger('resize', event, this.ui()); - - return false; - }, - - _mouseStop: function(event) { - - this.resizing = false; - var o = this.options, self = this; - - if(this._helper) { - var pr = this._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName), - soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height, - soffsetw = ista ? 0 : self.sizeDiff.width; - - var s = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) }, - left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null, - top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null; - - if (!o.animate) - this.element.css($.extend(s, { top: top, left: left })); - - self.helper.height(self.size.height); - self.helper.width(self.size.width); - - if (this._helper && !o.animate) this._proportionallyResize(); - } - - $('body').css('cursor', 'auto'); - - this.element.removeClass("ui-resizable-resizing"); - - this._propagate("stop", event); - - if (this._helper) this.helper.remove(); - return false; - - }, - - _updateCache: function(data) { - var o = this.options; - this.offset = this.helper.offset(); - if (isNumber(data.left)) this.position.left = data.left; - if (isNumber(data.top)) this.position.top = data.top; - if (isNumber(data.height)) this.size.height = data.height; - if (isNumber(data.width)) this.size.width = data.width; - }, - - _updateRatio: function(data, event) { - - var o = this.options, cpos = this.position, csize = this.size, a = this.axis; - - if (data.height) data.width = (csize.height * this.aspectRatio); - else if (data.width) data.height = (csize.width / this.aspectRatio); - - if (a == 'sw') { - data.left = cpos.left + (csize.width - data.width); - data.top = null; - } - if (a == 'nw') { - data.top = cpos.top + (csize.height - data.height); - data.left = cpos.left + (csize.width - data.width); - } - - return data; - }, - - _respectSize: function(data, event) { - - var el = this.helper, o = this.options, pRatio = this._aspectRatio || event.shiftKey, a = this.axis, - ismaxw = isNumber(data.width) && o.maxWidth && (o.maxWidth < data.width), ismaxh = isNumber(data.height) && o.maxHeight && (o.maxHeight < data.height), - isminw = isNumber(data.width) && o.minWidth && (o.minWidth > data.width), isminh = isNumber(data.height) && o.minHeight && (o.minHeight > data.height); - - if (isminw) data.width = o.minWidth; - if (isminh) data.height = o.minHeight; - if (ismaxw) data.width = o.maxWidth; - if (ismaxh) data.height = o.maxHeight; - - var dw = this.originalPosition.left + this.originalSize.width, dh = this.position.top + this.size.height; - var cw = /sw|nw|w/.test(a), ch = /nw|ne|n/.test(a); - - if (isminw && cw) data.left = dw - o.minWidth; - if (ismaxw && cw) data.left = dw - o.maxWidth; - if (isminh && ch) data.top = dh - o.minHeight; - if (ismaxh && ch) data.top = dh - o.maxHeight; - - // fixing jump error on top/left - bug #2330 - var isNotwh = !data.width && !data.height; - if (isNotwh && !data.left && data.top) data.top = null; - else if (isNotwh && !data.top && data.left) data.left = null; - - return data; - }, - - _proportionallyResize: function() { - - var o = this.options; - if (!this._proportionallyResizeElements.length) return; - var element = this.helper || this.element; - - for (var i=0; i < this._proportionallyResizeElements.length; i++) { - - var prel = this._proportionallyResizeElements[i]; - - if (!this.borderDif) { - var b = [prel.css('borderTopWidth'), prel.css('borderRightWidth'), prel.css('borderBottomWidth'), prel.css('borderLeftWidth')], - p = [prel.css('paddingTop'), prel.css('paddingRight'), prel.css('paddingBottom'), prel.css('paddingLeft')]; - - this.borderDif = $.map(b, function(v, i) { - var border = parseInt(v,10)||0, padding = parseInt(p[i],10)||0; - return border + padding; - }); - } - - if ($.browser.msie && !(!($(element).is(':hidden') || $(element).parents(':hidden').length))) - continue; - - prel.css({ - height: (element.height() - this.borderDif[0] - this.borderDif[2]) || 0, - width: (element.width() - this.borderDif[1] - this.borderDif[3]) || 0 - }); - - }; - - }, - - _renderProxy: function() { - - var el = this.element, o = this.options; - this.elementOffset = el.offset(); - - if(this._helper) { - - this.helper = this.helper || $('
    '); - - // fix ie6 offset TODO: This seems broken - var ie6 = $.browser.msie && $.browser.version < 7, ie6offset = (ie6 ? 1 : 0), - pxyoffset = ( ie6 ? 2 : -1 ); - - this.helper.addClass(this._helper).css({ - width: this.element.outerWidth() + pxyoffset, - height: this.element.outerHeight() + pxyoffset, - position: 'absolute', - left: this.elementOffset.left - ie6offset +'px', - top: this.elementOffset.top - ie6offset +'px', - zIndex: ++o.zIndex //TODO: Don't modify option - }); - - this.helper - .appendTo("body") - .disableSelection(); - - } else { - this.helper = this.element; - } - - }, - - _change: { - e: function(event, dx, dy) { - return { width: this.originalSize.width + dx }; - }, - w: function(event, dx, dy) { - var o = this.options, cs = this.originalSize, sp = this.originalPosition; - return { left: sp.left + dx, width: cs.width - dx }; - }, - n: function(event, dx, dy) { - var o = this.options, cs = this.originalSize, sp = this.originalPosition; - return { top: sp.top + dy, height: cs.height - dy }; - }, - s: function(event, dx, dy) { - return { height: this.originalSize.height + dy }; - }, - se: function(event, dx, dy) { - return $.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [event, dx, dy])); - }, - sw: function(event, dx, dy) { - return $.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [event, dx, dy])); - }, - ne: function(event, dx, dy) { - return $.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [event, dx, dy])); - }, - nw: function(event, dx, dy) { - return $.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [event, dx, dy])); - } - }, - - _propagate: function(n, event) { - $.ui.plugin.call(this, n, [event, this.ui()]); - (n != "resize" && this._trigger(n, event, 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 - }; - } - -})); - -$.extend($.ui.resizable, { - version: "1.7", - eventPrefix: "resize", - defaults: { - alsoResize: false, - animate: false, - animateDuration: "slow", - animateEasing: "swing", - aspectRatio: false, - autoHide: false, - cancel: ":input,option", - containment: false, - delay: 0, - distance: 1, - ghost: false, - grid: false, - handles: "e,s,se", - helper: false, - maxHeight: null, - maxWidth: null, - minHeight: 10, - minWidth: 10, - zIndex: 1000 - } -}); - -/* - * Resizable Extensions - */ - -$.ui.plugin.add("resizable", "alsoResize", { - - start: function(event, ui) { - - var self = $(this).data("resizable"), o = self.options; - - _store = function(exp) { - $(exp).each(function() { - $(this).data("resizable-alsoresize", { - width: parseInt($(this).width(), 10), height: parseInt($(this).height(), 10), - left: parseInt($(this).css('left'), 10), top: parseInt($(this).css('top'), 10) - }); - }); - }; - - if (typeof(o.alsoResize) == 'object' && !o.alsoResize.parentNode) { - if (o.alsoResize.length) { o.alsoResize = o.alsoResize[0]; _store(o.alsoResize); } - else { $.each(o.alsoResize, function(exp, c) { _store(exp); }); } - }else{ - _store(o.alsoResize); - } - }, - - resize: function(event, ui){ - var self = $(this).data("resizable"), o = self.options, os = self.originalSize, op = self.originalPosition; - - var delta = { - height: (self.size.height - os.height) || 0, width: (self.size.width - os.width) || 0, - top: (self.position.top - op.top) || 0, left: (self.position.left - op.left) || 0 - }, - - _alsoResize = function(exp, c) { - $(exp).each(function() { - var el = $(this), start = $(this).data("resizable-alsoresize"), style = {}, css = c && c.length ? c : ['width', 'height', 'top', 'left']; - - $.each(css || ['width', 'height', 'top', 'left'], function(i, prop) { - var sum = (start[prop]||0) + (delta[prop]||0); - if (sum && sum >= 0) - style[prop] = sum || null; - }); - - //Opera fixing relative position - if (/relative/.test(el.css('position')) && $.browser.opera) { - self._revertToRelativePosition = true; - el.css({ position: 'absolute', top: 'auto', left: 'auto' }); - } - - el.css(style); - }); - }; - - if (typeof(o.alsoResize) == 'object' && !o.alsoResize.nodeType) { - $.each(o.alsoResize, function(exp, c) { _alsoResize(exp, c); }); - }else{ - _alsoResize(o.alsoResize); - } - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"); - - //Opera fixing relative position - if (self._revertToRelativePosition && $.browser.opera) { - self._revertToRelativePosition = false; - el.css({ position: 'relative' }); - } - - $(this).removeData("resizable-alsoresize-start"); - } -}); - -$.ui.plugin.add("resizable", "animate", { - - stop: function(event, ui) { - var self = $(this).data("resizable"), o = self.options; - - var pr = self._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName), - soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height, - soffsetw = ista ? 0 : self.sizeDiff.width; - - var style = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) }, - left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null, - top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null; - - self.element.animate( - $.extend(style, top && left ? { top: top, left: left } : {}), { - duration: o.animateDuration, - easing: o.animateEasing, - step: function() { - - var data = { - width: parseInt(self.element.css('width'), 10), - height: parseInt(self.element.css('height'), 10), - top: parseInt(self.element.css('top'), 10), - left: parseInt(self.element.css('left'), 10) - }; - - if (pr && pr.length) $(pr[0]).css({ width: data.width, height: data.height }); - - // propagating resize, and updating values for each animation step - self._updateCache(data); - self._propagate("resize", event); - - } - } - ); - } - -}); - -$.ui.plugin.add("resizable", "containment", { - - start: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, el = self.element; - var oc = o.containment, ce = (oc instanceof $) ? oc.get(0) : (/parent/.test(oc)) ? el.parent().get(0) : oc; - if (!ce) return; - - self.containerElement = $(ce); - - if (/document/.test(oc) || oc == document) { - self.containerOffset = { left: 0, top: 0 }; - self.containerPosition = { left: 0, top: 0 }; - - self.parentData = { - element: $(document), left: 0, top: 0, - width: $(document).width(), height: $(document).height() || document.body.parentNode.scrollHeight - }; - } - - // i'm a node, so compute top, left, right, bottom - else { - var element = $(ce), p = []; - $([ "Top", "Right", "Left", "Bottom" ]).each(function(i, name) { p[i] = num(element.css("padding" + name)); }); - - self.containerOffset = element.offset(); - self.containerPosition = element.position(); - self.containerSize = { height: (element.innerHeight() - p[3]), width: (element.innerWidth() - p[1]) }; - - var co = self.containerOffset, ch = self.containerSize.height, cw = self.containerSize.width, - width = ($.ui.hasScroll(ce, "left") ? ce.scrollWidth : cw ), height = ($.ui.hasScroll(ce) ? ce.scrollHeight : ch); - - self.parentData = { - element: ce, left: co.left, top: co.top, width: width, height: height - }; - } - }, - - resize: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, - ps = self.containerSize, co = self.containerOffset, cs = self.size, cp = self.position, - pRatio = o._aspectRatio || event.shiftKey, cop = { top:0, left:0 }, ce = self.containerElement; - - if (ce[0] != document && (/static/).test(ce.css('position'))) cop = co; - - if (cp.left < (self._helper ? co.left : 0)) { - self.size.width = self.size.width + (self._helper ? (self.position.left - co.left) : (self.position.left - cop.left)); - if (pRatio) self.size.height = self.size.width / o.aspectRatio; - self.position.left = o.helper ? co.left : 0; - } - - if (cp.top < (self._helper ? co.top : 0)) { - self.size.height = self.size.height + (self._helper ? (self.position.top - co.top) : self.position.top); - if (pRatio) self.size.width = self.size.height * o.aspectRatio; - self.position.top = self._helper ? co.top : 0; - } - - self.offset.left = self.parentData.left+self.position.left; - self.offset.top = self.parentData.top+self.position.top; - - var woset = Math.abs( (self._helper ? self.offset.left - cop.left : (self.offset.left - cop.left)) + self.sizeDiff.width ), - hoset = Math.abs( (self._helper ? self.offset.top - cop.top : (self.offset.top - co.top)) + self.sizeDiff.height ); - - var isParent = self.containerElement.get(0) == self.element.parent().get(0), - isOffsetRelative = /relative|absolute/.test(self.containerElement.css('position')); - - if(isParent && isOffsetRelative) woset -= self.parentData.left; - - if (woset + self.size.width >= self.parentData.width) { - self.size.width = self.parentData.width - woset; - if (pRatio) self.size.height = self.size.width / o.aspectRatio; - } - - if (hoset + self.size.height >= self.parentData.height) { - self.size.height = self.parentData.height - hoset; - if (pRatio) self.size.width = self.size.height * o.aspectRatio; - } - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"), o = self.options, cp = self.position, - co = self.containerOffset, cop = self.containerPosition, ce = self.containerElement; - - var helper = $(self.helper), ho = helper.offset(), w = helper.outerWidth() - self.sizeDiff.width, h = helper.outerHeight() - self.sizeDiff.height; - - if (self._helper && !o.animate && (/relative/).test(ce.css('position'))) - $(this).css({ left: ho.left - cop.left - co.left, width: w, height: h }); - - if (self._helper && !o.animate && (/static/).test(ce.css('position'))) - $(this).css({ left: ho.left - cop.left - co.left, width: w, height: h }); - - } -}); - -$.ui.plugin.add("resizable", "ghost", { - - start: function(event, ui) { - - var self = $(this).data("resizable"), o = self.options, cs = self.size; - - self.ghost = self.originalElement.clone(); - self.ghost - .css({ opacity: .25, display: 'block', position: 'relative', height: cs.height, width: cs.width, margin: 0, left: 0, top: 0 }) - .addClass('ui-resizable-ghost') - .addClass(typeof o.ghost == 'string' ? o.ghost : ''); - - self.ghost.appendTo(self.helper); - - }, - - resize: function(event, ui){ - var self = $(this).data("resizable"), o = self.options; - if (self.ghost) self.ghost.css({ position: 'relative', height: self.size.height, width: self.size.width }); - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"), o = self.options; - if (self.ghost && self.helper) self.helper.get(0).removeChild(self.ghost.get(0)); - } - -}); - -$.ui.plugin.add("resizable", "grid", { - - resize: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, cs = self.size, os = self.originalSize, op = self.originalPosition, a = self.axis, ratio = o._aspectRatio || event.shiftKey; - o.grid = typeof o.grid == "number" ? [o.grid, o.grid] : o.grid; - var ox = Math.round((cs.width - os.width) / (o.grid[0]||1)) * (o.grid[0]||1), oy = Math.round((cs.height - os.height) / (o.grid[1]||1)) * (o.grid[1]||1); - - if (/^(se|s|e)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - } - else if (/^(ne)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.top = op.top - oy; - } - else if (/^(sw)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.left = op.left - ox; - } - else { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.top = op.top - oy; - self.position.left = op.left - ox; - } - } - -}); - -var num = function(v) { - return parseInt(v, 10) || 0; -}; - -var isNumber = function(value) { - return !isNaN(parseInt(value, 10)); -}; - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.selectable.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.selectable.js deleted file mode 100644 index 3d5df28..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.selectable.js +++ /dev/null @@ -1,257 +0,0 @@ -/* - * jQuery UI Selectable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Selectables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.selectable", $.extend({}, $.ui.mouse, { - - _init: function() { - var self = this; - - this.element.addClass("ui-selectable"); - - this.dragged = false; - - // cache selectee children based on filter - var selectees; - this.refresh = function() { - selectees = $(self.options.filter, self.element[0]); - selectees.each(function() { - var $this = $(this); - var pos = $this.offset(); - $.data(this, "selectable-item", { - element: this, - $element: $this, - left: pos.left, - top: pos.top, - right: pos.left + $this.outerWidth(), - bottom: pos.top + $this.outerHeight(), - startselected: false, - selected: $this.hasClass('ui-selected'), - selecting: $this.hasClass('ui-selecting'), - unselecting: $this.hasClass('ui-unselecting') - }); - }); - }; - this.refresh(); - - this.selectees = selectees.addClass("ui-selectee"); - - this._mouseInit(); - - this.helper = $(document.createElement('div')) - .css({border:'1px dotted black'}) - .addClass("ui-selectable-helper"); - }, - - destroy: function() { - this.element - .removeClass("ui-selectable ui-selectable-disabled") - .removeData("selectable") - .unbind(".selectable"); - this._mouseDestroy(); - }, - - _mouseStart: function(event) { - var self = this; - - this.opos = [event.pageX, event.pageY]; - - if (this.options.disabled) - return; - - var options = this.options; - - this.selectees = $(options.filter, this.element[0]); - - this._trigger("start", event); - - $('body').append(this.helper); - // position helper (lasso) - this.helper.css({ - "z-index": 100, - "position": "absolute", - "left": event.clientX, - "top": event.clientY, - "width": 0, - "height": 0 - }); - - if (options.autoRefresh) { - this.refresh(); - } - - this.selectees.filter('.ui-selected').each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.startselected = true; - if (!event.metaKey) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - }); - - $(event.target).parents().andSelf().each(function() { - var selectee = $.data(this, "selectable-item"); - if (selectee) { - selectee.$element.removeClass("ui-unselecting").addClass('ui-selecting'); - selectee.unselecting = false; - selectee.selecting = true; - selectee.selected = true; - // selectable SELECTING callback - self._trigger("selecting", event, { - selecting: selectee.element - }); - return false; - } - }); - - }, - - _mouseDrag: function(event) { - var self = this; - this.dragged = true; - - if (this.options.disabled) - return; - - var options = this.options; - - var x1 = this.opos[0], y1 = this.opos[1], x2 = event.pageX, y2 = event.pageY; - if (x1 > x2) { var tmp = x2; x2 = x1; x1 = tmp; } - if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; } - this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1}); - - this.selectees.each(function() { - var selectee = $.data(this, "selectable-item"); - //prevent helper from being selected if appendTo: selectable - if (!selectee || selectee.element == self.element[0]) - return; - var hit = false; - if (options.tolerance == 'touch') { - hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) ); - } else if (options.tolerance == 'fit') { - hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2); - } - - if (hit) { - // SELECT - if (selectee.selected) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - } - if (selectee.unselecting) { - selectee.$element.removeClass('ui-unselecting'); - selectee.unselecting = false; - } - if (!selectee.selecting) { - selectee.$element.addClass('ui-selecting'); - selectee.selecting = true; - // selectable SELECTING callback - self._trigger("selecting", event, { - selecting: selectee.element - }); - } - } else { - // UNSELECT - if (selectee.selecting) { - if (event.metaKey && selectee.startselected) { - selectee.$element.removeClass('ui-selecting'); - selectee.selecting = false; - selectee.$element.addClass('ui-selected'); - selectee.selected = true; - } else { - selectee.$element.removeClass('ui-selecting'); - selectee.selecting = false; - if (selectee.startselected) { - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - } - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - } - if (selectee.selected) { - if (!event.metaKey && !selectee.startselected) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - } - } - }); - - return false; - }, - - _mouseStop: function(event) { - var self = this; - - this.dragged = false; - - var options = this.options; - - $('.ui-unselecting', this.element[0]).each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.$element.removeClass('ui-unselecting'); - selectee.unselecting = false; - selectee.startselected = false; - self._trigger("unselected", event, { - unselected: selectee.element - }); - }); - $('.ui-selecting', this.element[0]).each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.$element.removeClass('ui-selecting').addClass('ui-selected'); - selectee.selecting = false; - selectee.selected = true; - selectee.startselected = true; - self._trigger("selected", event, { - selected: selectee.element - }); - }); - this._trigger("stop", event); - - this.helper.remove(); - - return false; - } - -})); - -$.extend($.ui.selectable, { - version: "1.7", - defaults: { - appendTo: 'body', - autoRefresh: true, - cancel: ":input,option", - delay: 0, - distance: 0, - filter: '*', - tolerance: 'touch' - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.slider.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.slider.js deleted file mode 100644 index a7b4d0c..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.slider.js +++ /dev/null @@ -1,511 +0,0 @@ -/* - * jQuery UI Slider 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Slider - * - * Depends: - * ui.core.js - */ - -(function($) { - -$.widget("ui.slider", $.extend({}, $.ui.mouse, { - - _init: function() { - - var self = this, o = this.options; - this._keySliding = false; - this._handleIndex = null; - this._detectOrientation(); - this._mouseInit(); - - this.element - .addClass("ui-slider" - + " ui-slider-" + this.orientation - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all"); - - this.range = $([]); - - if (o.range) { - - if (o.range === true) { - this.range = $('
    '); - if (!o.values) o.values = [this._valueMin(), this._valueMin()]; - if (o.values.length && o.values.length != 2) { - o.values = [o.values[0], o.values[0]]; - } - } else { - this.range = $('
    '); - } - - this.range - .appendTo(this.element) - .addClass("ui-slider-range"); - - if (o.range == "min" || o.range == "max") { - this.range.addClass("ui-slider-range-" + o.range); - } - - // note: this isn't the most fittingly semantic framework class for this element, - // but worked best visually with a variety of themes - this.range.addClass("ui-widget-header"); - - } - - if ($(".ui-slider-handle", this.element).length == 0) - $('
    ') - .appendTo(this.element) - .addClass("ui-slider-handle"); - - if (o.values && o.values.length) { - while ($(".ui-slider-handle", this.element).length < o.values.length) - $('') - .appendTo(this.element) - .addClass("ui-slider-handle"); - } - - this.handles = $(".ui-slider-handle", this.element) - .addClass("ui-state-default" - + " ui-corner-all"); - - this.handle = this.handles.eq(0); - - this.handles.add(this.range).filter("a") - .click(function(event) { event.preventDefault(); }) - .hover(function() { $(this).addClass('ui-state-hover'); }, function() { $(this).removeClass('ui-state-hover'); }) - .focus(function() { $(".ui-slider .ui-state-focus").removeClass('ui-state-focus'); $(this).addClass('ui-state-focus'); }) - .blur(function() { $(this).removeClass('ui-state-focus'); }); - - this.handles.each(function(i) { - $(this).data("index.ui-slider-handle", i); - }); - - this.handles.keydown(function(event) { - - var ret = true; - - var index = $(this).data("index.ui-slider-handle"); - - if (self.options.disabled) - return; - - switch (event.keyCode) { - case $.ui.keyCode.HOME: - case $.ui.keyCode.END: - case $.ui.keyCode.UP: - case $.ui.keyCode.RIGHT: - case $.ui.keyCode.DOWN: - case $.ui.keyCode.LEFT: - ret = false; - if (!self._keySliding) { - self._keySliding = true; - $(this).addClass("ui-state-active"); - self._start(event, index); - } - break; - } - - var curVal, newVal, step = self._step(); - if (self.options.values && self.options.values.length) { - curVal = newVal = self.values(index); - } else { - curVal = newVal = self.value(); - } - - switch (event.keyCode) { - case $.ui.keyCode.HOME: - newVal = self._valueMin(); - break; - case $.ui.keyCode.END: - newVal = self._valueMax(); - break; - case $.ui.keyCode.UP: - case $.ui.keyCode.RIGHT: - if(curVal == self._valueMax()) return; - newVal = curVal + step; - break; - case $.ui.keyCode.DOWN: - case $.ui.keyCode.LEFT: - if(curVal == self._valueMin()) return; - newVal = curVal - step; - break; - } - - self._slide(event, index, newVal); - - return ret; - - }).keyup(function(event) { - - var index = $(this).data("index.ui-slider-handle"); - - if (self._keySliding) { - self._stop(event, index); - self._change(event, index); - self._keySliding = false; - $(this).removeClass("ui-state-active"); - } - - }); - - this._refreshValue(); - - }, - - destroy: function() { - - this.handles.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(); - - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (o.disabled) - return false; - - this.elementSize = { - width: this.element.outerWidth(), - height: this.element.outerHeight() - }; - this.elementOffset = this.element.offset(); - - var position = { x: event.pageX, y: event.pageY }; - var normValue = this._normValueFromMouse(position); - - var distance = this._valueMax() + 1, closestHandle; - var self = this, index; - this.handles.each(function(i) { - var thisDistance = Math.abs(normValue - self.values(i)); - if (distance > thisDistance) { - distance = thisDistance; - closestHandle = $(this); - index = i; - } - }); - - // workaround for bug #3736 (if both handles of a range are at 0, - // the first is always used as the one with least distance, - // and moving it is obviously prevented by preventing negative ranges) - if(o.range == true && this.values(1) == o.min) { - closestHandle = $(this.handles[++index]); - } - - this._start(event, index); - - self._handleIndex = index; - - closestHandle - .addClass("ui-state-active") - .focus(); - - var offset = closestHandle.offset(); - var mouseOverHandle = !$(event.target).parents().andSelf().is('.ui-slider-handle'); - this._clickOffset = mouseOverHandle ? { left: 0, top: 0 } : { - left: event.pageX - offset.left - (closestHandle.width() / 2), - top: event.pageY - offset.top - - (closestHandle.height() / 2) - - (parseInt(closestHandle.css('borderTopWidth'),10) || 0) - - (parseInt(closestHandle.css('borderBottomWidth'),10) || 0) - + (parseInt(closestHandle.css('marginTop'),10) || 0) - }; - - normValue = this._normValueFromMouse(position); - this._slide(event, index, normValue); - return true; - - }, - - _mouseStart: function(event) { - return true; - }, - - _mouseDrag: function(event) { - - var position = { x: event.pageX, y: event.pageY }; - var normValue = this._normValueFromMouse(position); - - this._slide(event, this._handleIndex, normValue); - - return false; - - }, - - _mouseStop: function(event) { - - this.handles.removeClass("ui-state-active"); - this._stop(event, this._handleIndex); - this._change(event, this._handleIndex); - this._handleIndex = null; - this._clickOffset = null; - - return false; - - }, - - _detectOrientation: function() { - this.orientation = this.options.orientation == 'vertical' ? 'vertical' : 'horizontal'; - }, - - _normValueFromMouse: function(position) { - - var pixelTotal, pixelMouse; - if ('horizontal' == this.orientation) { - pixelTotal = this.elementSize.width; - pixelMouse = position.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0); - } else { - pixelTotal = this.elementSize.height; - pixelMouse = position.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0); - } - - var percentMouse = (pixelMouse / pixelTotal); - if (percentMouse > 1) percentMouse = 1; - if (percentMouse < 0) percentMouse = 0; - if ('vertical' == this.orientation) - percentMouse = 1 - percentMouse; - - var valueTotal = this._valueMax() - this._valueMin(), - valueMouse = percentMouse * valueTotal, - valueMouseModStep = valueMouse % this.options.step, - normValue = this._valueMin() + valueMouse - valueMouseModStep; - - if (valueMouseModStep > (this.options.step / 2)) - normValue += this.options.step; - - // Since JavaScript has problems with large floats, round - // the final value to 5 digits after the decimal point (see #4124) - return parseFloat(normValue.toFixed(5)); - - }, - - _start: function(event, index) { - this._trigger("start", event, this._uiHash(index)); - }, - - _slide: function(event, index, newVal) { - - var handle = this.handles[index]; - - if (this.options.values && this.options.values.length) { - - var otherVal = this.values(index ? 0 : 1); - - if ((index == 0 && newVal >= otherVal) || (index == 1 && newVal <= otherVal)) - newVal = otherVal; - - if (newVal != this.values(index)) { - var newValues = this.values(); - newValues[index] = newVal; - // A slide can be canceled by returning false from the slide callback - var allowed = this._trigger("slide", event, this._uiHash(index, newVal, newValues)); - var otherVal = this.values(index ? 0 : 1); - if (allowed !== false) { - this.values(index, newVal, ( event.type == 'mousedown' && this.options.animate ), true); - } - } - - } else { - - if (newVal != this.value()) { - // A slide can be canceled by returning false from the slide callback - var allowed = this._trigger("slide", event, this._uiHash(index, newVal)); - if (allowed !== false) { - this._setData('value', newVal, ( event.type == 'mousedown' && this.options.animate )); - } - - } - - } - - }, - - _stop: function(event, index) { - this._trigger("stop", event, this._uiHash(index)); - }, - - _change: function(event, index) { - this._trigger("change", event, this._uiHash(index)); - }, - - value: function(newValue) { - - if (arguments.length) { - this._setData("value", newValue); - this._change(null, 0); - } - - return this._value(); - - }, - - values: function(index, newValue, animated, noPropagation) { - - if (arguments.length > 1) { - this.options.values[index] = newValue; - this._refreshValue(animated); - if(!noPropagation) this._change(null, index); - } - - if (arguments.length) { - if (this.options.values && this.options.values.length) { - return this._values(index); - } else { - return this.value(); - } - } else { - return this._values(); - } - - }, - - _setData: function(key, value, animated) { - - $.widget.prototype._setData.apply(this, arguments); - - switch (key) { - case 'orientation': - - this._detectOrientation(); - - this.element - .removeClass("ui-slider-horizontal ui-slider-vertical") - .addClass("ui-slider-" + this.orientation); - this._refreshValue(animated); - break; - case 'value': - this._refreshValue(animated); - break; - } - - }, - - _step: function() { - var step = this.options.step; - return step; - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _values: function(index) { - - if (arguments.length) { - var val = this.options.values[index]; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - } else { - return this.options.values; - } - - }, - - _valueMin: function() { - var valueMin = this.options.min; - return valueMin; - }, - - _valueMax: function() { - var valueMax = this.options.max; - return valueMax; - }, - - _refreshValue: function(animate) { - - var oRange = this.options.range, o = this.options, self = this; - - if (this.options.values && this.options.values.length) { - var vp0, vp1; - this.handles.each(function(i, j) { - var valPercent = (self.values(i) - self._valueMin()) / (self._valueMax() - self._valueMin()) * 100; - var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%'; - $(this).stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate); - if (self.options.range === true) { - if (self.orientation == 'horizontal') { - (i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ left: valPercent + '%' }, o.animate); - (i == 1) && self.range[animate ? 'animate' : 'css']({ width: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate }); - } else { - (i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ bottom: (valPercent) + '%' }, o.animate); - (i == 1) && self.range[animate ? 'animate' : 'css']({ height: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate }); - } - } - lastValPercent = valPercent; - }); - } else { - var value = this.value(), - valueMin = this._valueMin(), - valueMax = this._valueMax(), - valPercent = valueMax != valueMin - ? (value - valueMin) / (valueMax - valueMin) * 100 - : 0; - var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%'; - this.handle.stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate); - - (oRange == "min") && (this.orientation == "horizontal") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ width: valPercent + '%' }, o.animate); - (oRange == "max") && (this.orientation == "horizontal") && this.range[animate ? 'animate' : 'css']({ width: (100 - valPercent) + '%' }, { queue: false, duration: o.animate }); - (oRange == "min") && (this.orientation == "vertical") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ height: valPercent + '%' }, o.animate); - (oRange == "max") && (this.orientation == "vertical") && this.range[animate ? 'animate' : 'css']({ height: (100 - valPercent) + '%' }, { queue: false, duration: o.animate }); - } - - }, - - _uiHash: function(index, value, values) { - - var multiple = this.options.values && this.options.values.length; - return { - handle: this.handles[index], - value: value || (multiple ? this.values(index) : this.value()), - values: values || (multiple && this.values()) - }; - - } - -})); - -$.extend($.ui.slider, { - getter: "value values", - version: "1.7", - eventPrefix: "slide", - defaults: { - animate: false, - delay: 0, - distance: 0, - max: 100, - min: 0, - orientation: 'horizontal', - range: false, - step: 1, - value: 0, - values: null - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.sortable.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.sortable.js deleted file mode 100644 index b18d52e..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.sortable.js +++ /dev/null @@ -1,1019 +0,0 @@ -/* - * jQuery UI Sortable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Sortables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.sortable", $.extend({}, $.ui.mouse, { - _init: function() { - - var o = this.options; - this.containerCache = {}; - this.element.addClass("ui-sortable"); - - //Get the items - this.refresh(); - - //Let's determine if the items are floating - this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) : false; - - //Let's determine the parent's offset - this.offset = this.element.offset(); - - //Initialize mouse events for interaction - this._mouseInit(); - - }, - - destroy: function() { - this.element - .removeClass("ui-sortable ui-sortable-disabled") - .removeData("sortable") - .unbind(".sortable"); - this._mouseDestroy(); - - for ( var i = this.items.length - 1; i >= 0; i-- ) - this.items[i].item.removeData("sortable-item"); - }, - - _mouseCapture: function(event, overrideHandle) { - - if (this.reverting) { - return false; - } - - if(this.options.disabled || this.options.type == 'static') return false; - - //We have to refresh the items data once first - this._refreshItems(event); - - //Find out if the clicked node (or one of its parents) is a actual item in this.items - var currentItem = null, self = this, nodes = $(event.target).parents().each(function() { - if($.data(this, 'sortable-item') == self) { - currentItem = $(this); - return false; - } - }); - if($.data(event.target, 'sortable-item') == self) currentItem = $(event.target); - - if(!currentItem) return false; - if(this.options.handle && !overrideHandle) { - var validHandle = false; - - $(this.options.handle, currentItem).find("*").andSelf().each(function() { if(this == event.target) validHandle = true; }); - if(!validHandle) return false; - } - - this.currentItem = currentItem; - this._removeCurrentsFromItems(); - return true; - - }, - - _mouseStart: function(event, overrideHandle, noActivation) { - - var o = this.options, self = this; - this.currentContainer = this; - - //We only need to call refreshPositions, because the refreshItems call has been moved to mouseCapture - this.refreshPositions(); - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Get the next scrolling parent - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.currentItem.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - // Only after we got the offset, we can change the helper's position to absolute - // TODO: Still need to figure out a way to make relative sorting possible - this.helper.css("position", "absolute"); - this.cssPosition = this.helper.css("position"); - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Cache the former DOM position - this.domPosition = { prev: this.currentItem.prev()[0], parent: this.currentItem.parent()[0] }; - - //If the helper is not the original, hide the original so it's not playing any role during the drag, won't cause anything bad this way - if(this.helper[0] != this.currentItem[0]) { - this.currentItem.hide(); - } - - //Create the placeholder - this._createPlaceholder(); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - if(o.cursor) { // cursor option - if ($('body').css("cursor")) this._storedCursor = $('body').css("cursor"); - $('body').css("cursor", o.cursor); - } - - if(o.opacity) { // opacity option - if (this.helper.css("opacity")) this._storedOpacity = this.helper.css("opacity"); - this.helper.css("opacity", o.opacity); - } - - if(o.zIndex) { // zIndex option - if (this.helper.css("zIndex")) this._storedZIndex = this.helper.css("zIndex"); - this.helper.css("zIndex", o.zIndex); - } - - //Prepare scrolling - if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML') - this.overflowOffset = this.scrollParent.offset(); - - //Call callbacks - this._trigger("start", event, this._uiHash()); - - //Recache the helper size - if(!this._preserveHelperProportions) - this._cacheHelperProportions(); - - - //Post 'activate' events to possible containers - if(!noActivation) { - for (var i = this.containers.length - 1; i >= 0; i--) { this.containers[i]._trigger("activate", event, self._uiHash(this)); } - } - - //Prepare possible droppables - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.dragging = true; - - this.helper.addClass("ui-sortable-helper"); - this._mouseDrag(event); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - - }, - - _mouseDrag: function(event) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - if (!this.lastPositionAbs) { - this.lastPositionAbs = this.positionAbs; - } - - //Do scrolling - if(this.options.scroll) { - var o = this.options, scrolled = false; - if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML') { - - if((this.overflowOffset.top + this.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - this.overflowOffset.top < o.scrollSensitivity) - this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop - o.scrollSpeed; - - if((this.overflowOffset.left + this.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - this.overflowOffset.left < o.scrollSensitivity) - this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft - o.scrollSpeed; - - } else { - - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - } - - //Regenerate the absolute position used for position checks - this.positionAbs = this._convertPositionTo("absolute"); - - //Set the helper 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'; - - //Rearrange - for (var i = this.items.length - 1; i >= 0; i--) { - - //Cache variables and intersection, continue if no intersection - var item = this.items[i], itemElement = item.item[0], intersection = this._intersectsWithPointer(item); - if (!intersection) continue; - - if(itemElement != this.currentItem[0] //cannot intersect with itself - && this.placeholder[intersection == 1 ? "next" : "prev"]()[0] != itemElement //no useless actions that have been done before - && !$.ui.contains(this.placeholder[0], itemElement) //no action if the item moved is the parent of the item checked - && (this.options.type == 'semi-dynamic' ? !$.ui.contains(this.element[0], itemElement) : true) - ) { - - this.direction = intersection == 1 ? "down" : "up"; - - if (this.options.tolerance == "pointer" || this._intersectsWithSides(item)) { - this._rearrange(event, item); - } else { - break; - } - - this._trigger("change", event, this._uiHash()); - break; - } - } - - //Post events to containers - this._contactContainers(event); - - //Interconnect with droppables - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - //Call callbacks - this._trigger('sort', event, this._uiHash()); - - this.lastPositionAbs = this.positionAbs; - return false; - - }, - - _mouseStop: function(event, noPropagation) { - - if(!event) return; - - //If we are using droppables, inform the manager about the drop - if ($.ui.ddmanager && !this.options.dropBehaviour) - $.ui.ddmanager.drop(this, event); - - if(this.options.revert) { - var self = this; - var cur = self.placeholder.offset(); - - self.reverting = true; - - $(this.helper).animate({ - left: cur.left - this.offset.parent.left - self.margins.left + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollLeft), - top: cur.top - this.offset.parent.top - self.margins.top + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollTop) - }, parseInt(this.options.revert, 10) || 500, function() { - self._clear(event); - }); - } else { - this._clear(event, noPropagation); - } - - return false; - - }, - - cancel: function() { - - var self = this; - - if(this.dragging) { - - this._mouseUp(); - - if(this.options.helper == "original") - this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"); - else - this.currentItem.show(); - - //Post deactivating events to containers - for (var i = this.containers.length - 1; i >= 0; i--){ - this.containers[i]._trigger("deactivate", null, self._uiHash(this)); - if(this.containers[i].containerCache.over) { - this.containers[i]._trigger("out", null, self._uiHash(this)); - this.containers[i].containerCache.over = 0; - } - } - - } - - //$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node! - if(this.placeholder[0].parentNode) this.placeholder[0].parentNode.removeChild(this.placeholder[0]); - if(this.options.helper != "original" && this.helper && this.helper[0].parentNode) this.helper.remove(); - - $.extend(this, { - helper: null, - dragging: false, - reverting: false, - _noFinalSort: null - }); - - if(this.domPosition.prev) { - $(this.domPosition.prev).after(this.currentItem); - } else { - $(this.domPosition.parent).prepend(this.currentItem); - } - - return true; - - }, - - serialize: function(o) { - - var items = this._getItemsAsjQuery(o && o.connected); - var str = []; o = o || {}; - - $(items).each(function() { - var res = ($(o.item || this).attr(o.attribute || 'id') || '').match(o.expression || (/(.+)[-=_](.+)/)); - if(res) str.push((o.key || res[1]+'[]')+'='+(o.key && o.expression ? res[1] : res[2])); - }); - - return str.join('&'); - - }, - - toArray: function(o) { - - var items = this._getItemsAsjQuery(o && o.connected); - var ret = []; o = o || {}; - - items.each(function() { ret.push($(o.item || this).attr(o.attribute || 'id') || ''); }); - return ret; - - }, - - /* Be careful with the following core functions */ - _intersectsWith: function(item) { - - var x1 = this.positionAbs.left, - x2 = x1 + this.helperProportions.width, - y1 = this.positionAbs.top, - y2 = y1 + this.helperProportions.height; - - var l = item.left, - r = l + item.width, - t = item.top, - b = t + item.height; - - var dyClick = this.offset.click.top, - dxClick = this.offset.click.left; - - var isOverElement = (y1 + dyClick) > t && (y1 + dyClick) < b && (x1 + dxClick) > l && (x1 + dxClick) < r; - - if( this.options.tolerance == "pointer" - || this.options.forcePointerForContainers - || (this.options.tolerance != "pointer" && this.helperProportions[this.floating ? 'width' : 'height'] > item[this.floating ? 'width' : 'height']) - ) { - return isOverElement; - } else { - - return (l < x1 + (this.helperProportions.width / 2) // Right Half - && x2 - (this.helperProportions.width / 2) < r // Left Half - && t < y1 + (this.helperProportions.height / 2) // Bottom Half - && y2 - (this.helperProportions.height / 2) < b ); // Top Half - - } - }, - - _intersectsWithPointer: function(item) { - - var isOverElementHeight = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top, item.height), - isOverElementWidth = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left, item.width), - isOverElement = isOverElementHeight && isOverElementWidth, - verticalDirection = this._getDragVerticalDirection(), - horizontalDirection = this._getDragHorizontalDirection(); - - if (!isOverElement) - return false; - - return this.floating ? - ( ((horizontalDirection && horizontalDirection == "right") || verticalDirection == "down") ? 2 : 1 ) - : ( verticalDirection && (verticalDirection == "down" ? 2 : 1) ); - - }, - - _intersectsWithSides: function(item) { - - var isOverBottomHalf = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top + (item.height/2), item.height), - isOverRightHalf = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left + (item.width/2), item.width), - verticalDirection = this._getDragVerticalDirection(), - horizontalDirection = this._getDragHorizontalDirection(); - - if (this.floating && horizontalDirection) { - return ((horizontalDirection == "right" && isOverRightHalf) || (horizontalDirection == "left" && !isOverRightHalf)); - } else { - return verticalDirection && ((verticalDirection == "down" && isOverBottomHalf) || (verticalDirection == "up" && !isOverBottomHalf)); - } - - }, - - _getDragVerticalDirection: function() { - var delta = this.positionAbs.top - this.lastPositionAbs.top; - return delta != 0 && (delta > 0 ? "down" : "up"); - }, - - _getDragHorizontalDirection: function() { - var delta = this.positionAbs.left - this.lastPositionAbs.left; - return delta != 0 && (delta > 0 ? "right" : "left"); - }, - - refresh: function(event) { - this._refreshItems(event); - this.refreshPositions(); - }, - - _connectWith: function() { - var options = this.options; - return options.connectWith.constructor == String - ? [options.connectWith] - : options.connectWith; - }, - - _getItemsAsjQuery: function(connected) { - - var self = this; - var items = []; - var queries = []; - var connectWith = this._connectWith(); - - if(connectWith && connected) { - for (var i = connectWith.length - 1; i >= 0; i--){ - var cur = $(connectWith[i]); - for (var j = cur.length - 1; j >= 0; j--){ - var inst = $.data(cur[j], 'sortable'); - if(inst && inst != this && !inst.options.disabled) { - queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element) : $(inst.options.items, inst.element).not(".ui-sortable-helper"), inst]); - } - }; - }; - } - - queries.push([$.isFunction(this.options.items) ? this.options.items.call(this.element, null, { options: this.options, item: this.currentItem }) : $(this.options.items, this.element).not(".ui-sortable-helper"), this]); - - for (var i = queries.length - 1; i >= 0; i--){ - queries[i][0].each(function() { - items.push(this); - }); - }; - - return $(items); - - }, - - _removeCurrentsFromItems: function() { - - var list = this.currentItem.find(":data(sortable-item)"); - - for (var i=0; i < this.items.length; i++) { - - for (var j=0; j < list.length; j++) { - if(list[j] == this.items[i].item[0]) - this.items.splice(i,1); - }; - - }; - - }, - - _refreshItems: function(event) { - - this.items = []; - this.containers = [this]; - var items = this.items; - var self = this; - var queries = [[$.isFunction(this.options.items) ? this.options.items.call(this.element[0], event, { item: this.currentItem }) : $(this.options.items, this.element), this]]; - var connectWith = this._connectWith(); - - if(connectWith) { - for (var i = connectWith.length - 1; i >= 0; i--){ - var cur = $(connectWith[i]); - for (var j = cur.length - 1; j >= 0; j--){ - var inst = $.data(cur[j], 'sortable'); - if(inst && inst != this && !inst.options.disabled) { - queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element[0], event, { item: this.currentItem }) : $(inst.options.items, inst.element), inst]); - this.containers.push(inst); - } - }; - }; - } - - for (var i = queries.length - 1; i >= 0; i--) { - var targetData = queries[i][1]; - var _queries = queries[i][0]; - - for (var j=0, queriesLength = _queries.length; j < queriesLength; j++) { - var item = $(_queries[j]); - - item.data('sortable-item', targetData); // Data for target checking (mouse manager) - - items.push({ - item: item, - instance: targetData, - width: 0, height: 0, - left: 0, top: 0 - }); - }; - }; - - }, - - refreshPositions: function(fast) { - - //This has to be redone because due to the item being moved out/into the offsetParent, the offsetParent's position will change - if(this.offsetParent && this.helper) { - this.offset.parent = this._getParentOffset(); - } - - for (var i = this.items.length - 1; i >= 0; i--){ - var item = this.items[i]; - - //We ignore calculating positions of all connected containers when we're not over them - if(item.instance != this.currentContainer && this.currentContainer && item.item[0] != this.currentItem[0]) - continue; - - var t = this.options.toleranceElement ? $(this.options.toleranceElement, item.item) : item.item; - - if (!fast) { - item.width = t.outerWidth(); - item.height = t.outerHeight(); - } - - var p = t.offset(); - item.left = p.left; - item.top = p.top; - }; - - if(this.options.custom && this.options.custom.refreshContainers) { - this.options.custom.refreshContainers.call(this); - } else { - for (var i = this.containers.length - 1; i >= 0; i--){ - var p = this.containers[i].element.offset(); - this.containers[i].containerCache.left = p.left; - this.containers[i].containerCache.top = p.top; - this.containers[i].containerCache.width = this.containers[i].element.outerWidth(); - this.containers[i].containerCache.height = this.containers[i].element.outerHeight(); - }; - } - - }, - - _createPlaceholder: function(that) { - - var self = that || this, o = self.options; - - if(!o.placeholder || o.placeholder.constructor == String) { - var className = o.placeholder; - o.placeholder = { - element: function() { - - var el = $(document.createElement(self.currentItem[0].nodeName)) - .addClass(className || self.currentItem[0].className+" ui-sortable-placeholder") - .removeClass("ui-sortable-helper")[0]; - - if(!className) - el.style.visibility = "hidden"; - - return el; - }, - update: function(container, p) { - - // 1. If a className is set as 'placeholder option, we don't force sizes - the class is responsible for that - // 2. The option 'forcePlaceholderSize can be enabled to force it even if a class name is specified - if(className && !o.forcePlaceholderSize) return; - - //If the element doesn't have a actual height by itself (without styles coming from a stylesheet), it receives the inline height from the dragged item - if(!p.height()) { p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css('paddingTop')||0, 10) - parseInt(self.currentItem.css('paddingBottom')||0, 10)); }; - if(!p.width()) { p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css('paddingLeft')||0, 10) - parseInt(self.currentItem.css('paddingRight')||0, 10)); }; - } - }; - } - - //Create the placeholder - self.placeholder = $(o.placeholder.element.call(self.element, self.currentItem)); - - //Append it after the actual current item - self.currentItem.after(self.placeholder); - - //Update the size of the placeholder (TODO: Logic to fuzzy, see line 316/317) - o.placeholder.update(self, self.placeholder); - - }, - - _contactContainers: function(event) { - for (var i = this.containers.length - 1; i >= 0; i--){ - - if(this._intersectsWith(this.containers[i].containerCache)) { - if(!this.containers[i].containerCache.over) { - - if(this.currentContainer != this.containers[i]) { - - //When entering a new container, we will find the item with the least distance and append our item near it - var dist = 10000; var itemWithLeastDistance = null; var base = this.positionAbs[this.containers[i].floating ? 'left' : 'top']; - for (var j = this.items.length - 1; j >= 0; j--) { - if(!$.ui.contains(this.containers[i].element[0], this.items[j].item[0])) continue; - var cur = this.items[j][this.containers[i].floating ? 'left' : 'top']; - if(Math.abs(cur - base) < dist) { - dist = Math.abs(cur - base); itemWithLeastDistance = this.items[j]; - } - } - - if(!itemWithLeastDistance && !this.options.dropOnEmpty) //Check if dropOnEmpty is enabled - continue; - - this.currentContainer = this.containers[i]; - itemWithLeastDistance ? this._rearrange(event, itemWithLeastDistance, null, true) : this._rearrange(event, null, this.containers[i].element, true); - this._trigger("change", event, this._uiHash()); - this.containers[i]._trigger("change", event, this._uiHash(this)); - - //Update the placeholder - this.options.placeholder.update(this.currentContainer, this.placeholder); - - } - - this.containers[i]._trigger("over", event, this._uiHash(this)); - this.containers[i].containerCache.over = 1; - } - } else { - if(this.containers[i].containerCache.over) { - this.containers[i]._trigger("out", event, this._uiHash(this)); - this.containers[i].containerCache.over = 0; - } - } - - }; - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event, this.currentItem])) : (o.helper == 'clone' ? this.currentItem.clone() : this.currentItem); - - if(!helper.parents('body').length) //Add the helper to the DOM if that didn't happen already - $(o.appendTo != 'parent' ? o.appendTo : this.currentItem[0].parentNode)[0].appendChild(helper[0]); - - if(helper[0] == this.currentItem[0]) - this._storedCSS = { width: this.currentItem[0].style.width, height: this.currentItem[0].style.height, position: this.currentItem.css("position"), top: this.currentItem.css("top"), left: this.currentItem.css("left") }; - - if(helper[0].style.width == '' || o.forceHelperSize) helper.width(this.currentItem.width()); - if(helper[0].style.height == '' || o.forceHelperSize) helper.height(this.currentItem.height()); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.currentItem.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.currentItem.css("marginLeft"),10) || 0), - top: (parseInt(this.currentItem.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment)) { - var ce = $(o.containment)[0]; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _rearrange: function(event, i, a, hardRefresh) { - - a ? a[0].appendChild(this.placeholder[0]) : i.item[0].parentNode.insertBefore(this.placeholder[0], (this.direction == 'down' ? i.item[0] : i.item[0].nextSibling)); - - //Various things done here to improve the performance: - // 1. we create a setTimeout, that calls refreshPositions - // 2. on the instance, we have a counter variable, that get's higher after every append - // 3. on the local scope, we copy the counter variable, and check in the timeout, if it's still the same - // 4. this lets only the last addition to the timeout stack through - this.counter = this.counter ? ++this.counter : 1; - var self = this, counter = this.counter; - - window.setTimeout(function() { - if(counter == self.counter) self.refreshPositions(!hardRefresh); //Precompute after each DOM insertion, NOT on mousemove - },0); - - }, - - _clear: function(event, noPropagation) { - - this.reverting = false; - // We delay all events that have to be triggered to after the point where the placeholder has been removed and - // everything else normalized again - var delayedTriggers = [], self = this; - - // We first have to update the dom position of the actual currentItem - // Note: don't do it if the current item is already removed (by a user), or it gets reappended (see #4088) - if(!this._noFinalSort && this.currentItem[0].parentNode) this.placeholder.before(this.currentItem); - this._noFinalSort = null; - - if(this.helper[0] == this.currentItem[0]) { - for(var i in this._storedCSS) { - if(this._storedCSS[i] == 'auto' || this._storedCSS[i] == 'static') this._storedCSS[i] = ''; - } - this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"); - } else { - this.currentItem.show(); - } - - if(this.fromOutside && !noPropagation) delayedTriggers.push(function(event) { this._trigger("receive", event, this._uiHash(this.fromOutside)); }); - if((this.fromOutside || this.domPosition.prev != this.currentItem.prev().not(".ui-sortable-helper")[0] || this.domPosition.parent != this.currentItem.parent()[0]) && !noPropagation) delayedTriggers.push(function(event) { this._trigger("update", event, this._uiHash()); }); //Trigger update callback if the DOM position has changed - if(!$.ui.contains(this.element[0], this.currentItem[0])) { //Node was moved out of the current element - if(!noPropagation) delayedTriggers.push(function(event) { this._trigger("remove", event, this._uiHash()); }); - for (var i = this.containers.length - 1; i >= 0; i--){ - if($.ui.contains(this.containers[i].element[0], this.currentItem[0]) && !noPropagation) { - delayedTriggers.push((function(c) { return function(event) { c._trigger("receive", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - delayedTriggers.push((function(c) { return function(event) { c._trigger("update", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - } - }; - }; - - //Post events to containers - for (var i = this.containers.length - 1; i >= 0; i--){ - if(!noPropagation) delayedTriggers.push((function(c) { return function(event) { c._trigger("deactivate", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - if(this.containers[i].containerCache.over) { - delayedTriggers.push((function(c) { return function(event) { c._trigger("out", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - this.containers[i].containerCache.over = 0; - } - } - - //Do what was originally in plugins - if(this._storedCursor) $('body').css("cursor", this._storedCursor); //Reset cursor - if(this._storedOpacity) this.helper.css("opacity", this._storedOpacity); //Reset cursor - if(this._storedZIndex) this.helper.css("zIndex", this._storedZIndex == 'auto' ? '' : this._storedZIndex); //Reset z-index - - this.dragging = false; - if(this.cancelHelperRemoval) { - if(!noPropagation) { - this._trigger("beforeStop", event, this._uiHash()); - for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events - this._trigger("stop", event, this._uiHash()); - } - return false; - } - - if(!noPropagation) this._trigger("beforeStop", event, this._uiHash()); - - //$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node! - this.placeholder[0].parentNode.removeChild(this.placeholder[0]); - - if(this.helper[0] != this.currentItem[0]) this.helper.remove(); this.helper = null; - - if(!noPropagation) { - for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events - this._trigger("stop", event, this._uiHash()); - } - - this.fromOutside = false; - return true; - - }, - - _trigger: function() { - if ($.widget.prototype._trigger.apply(this, arguments) === false) { - this.cancel(); - } - }, - - _uiHash: function(inst) { - var self = inst || this; - return { - helper: self.helper, - placeholder: self.placeholder || $([]), - position: self.position, - absolutePosition: self.positionAbs, //deprecated - offset: self.positionAbs, - item: self.currentItem, - sender: inst ? inst.element : null - }; - } - -})); - -$.extend($.ui.sortable, { - getter: "serialize toArray", - version: "1.7", - eventPrefix: "sort", - defaults: { - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectWith: false, - containment: false, - cursor: 'auto', - cursorAt: false, - delay: 0, - distance: 1, - dropOnEmpty: true, - forcePlaceholderSize: false, - forceHelperSize: false, - grid: false, - handle: false, - helper: "original", - items: '> *', - opacity: false, - placeholder: false, - revert: false, - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - scope: "default", - tolerance: "intersect", - zIndex: 1000 - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.tabs.js b/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.tabs.js deleted file mode 100644 index 15e9c9a..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/jquery/ui/ui.tabs.js +++ /dev/null @@ -1,685 +0,0 @@ -/* - * jQuery UI Tabs 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Tabs - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.tabs", { - - _init: function() { - if (this.options.deselectable !== undefined) { - this.options.collapsible = this.options.deselectable; - } - this._tabify(true); - }, - - _setData: function(key, value) { - if (key == 'selected') { - if (this.options.collapsible && value == this.options.selected) { - return; - } - this.select(value); - } - else { - this.options[key] = value; - if (key == 'deselectable') { - this.options.collapsible = value; - } - this._tabify(); - } - }, - - _tabId: function(a) { - return a.title && a.title.replace(/\s/g, '_').replace(/[^A-Za-z0-9\-_:\.]/g, '') || - this.options.idPrefix + $.data(a); - }, - - _sanitizeSelector: function(hash) { - return hash.replace(/:/g, '\\:'); // we need this because an id may contain a ":" - }, - - _cookie: function() { - var cookie = this.cookie || (this.cookie = this.options.cookie.name || 'ui-tabs-' + $.data(this.list[0])); - return $.cookie.apply(null, [cookie].concat($.makeArray(arguments))); - }, - - _ui: function(tab, panel) { - return { - tab: tab, - panel: panel, - index: this.anchors.index(tab) - }; - }, - - _cleanup: function() { - // restore all former loading tabs labels - this.lis.filter('.ui-state-processing').removeClass('ui-state-processing') - .find('span:data(label.tabs)') - .each(function() { - var el = $(this); - el.html(el.data('label.tabs')).removeData('label.tabs'); - }); - }, - - _tabify: function(init) { - - this.list = this.element.children('ul:first'); - this.lis = $('li:has(a[href])', this.list); - this.anchors = this.lis.map(function() { return $('a', this)[0]; }); - this.panels = $([]); - - var self = this, o = this.options; - - var fragmentId = /^#.+/; // Safari 2 reports '#' for an empty hash - this.anchors.each(function(i, a) { - var href = $(a).attr('href'); - - // For dynamically created HTML that contains a hash as href IE < 8 expands - // such href to the full page url with hash and then misinterprets tab as ajax. - // Same consideration applies for an added tab with a fragment identifier - // since a[href=#fragment-identifier] does unexpectedly not match. - // Thus normalize href attribute... - var hrefBase = href.split('#')[0], baseEl; - if (hrefBase && (hrefBase === location.toString().split('#')[0] || - (baseEl = $('base')[0]) && hrefBase === baseEl.href)) { - href = a.hash; - a.href = href; - } - - // inline tab - if (fragmentId.test(href)) { - self.panels = self.panels.add(self._sanitizeSelector(href)); - } - - // remote tab - else if (href != '#') { // prevent loading the page itself if href is just "#" - $.data(a, 'href.tabs', href); // required for restore on destroy - - // TODO until #3808 is fixed strip fragment identifier from url - // (IE fails to load from such url) - $.data(a, 'load.tabs', href.replace(/#.*$/, '')); // mutable data - - var id = self._tabId(a); - a.href = '#' + id; - var $panel = $('#' + id); - if (!$panel.length) { - $panel = $(o.panelTemplate).attr('id', id).addClass('ui-tabs-panel ui-widget-content ui-corner-bottom') - .insertAfter(self.panels[i - 1] || self.list); - $panel.data('destroy.tabs', true); - } - self.panels = self.panels.add($panel); - } - - // invalid tab href - else { - o.disabled.push(i); - } - }); - - // initialization from scratch - if (init) { - - // attach necessary classes for styling - 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'); - - // Selected tab - // use "selected" option or try to retrieve: - // 1. from fragment identifier in url - // 2. from cookie - // 3. from selected class attribute on
  • - if (o.selected === undefined) { - if (location.hash) { - this.anchors.each(function(i, a) { - if (a.hash == location.hash) { - o.selected = i; - return false; // break - } - }); - } - if (typeof o.selected != 'number' && o.cookie) { - o.selected = parseInt(self._cookie(), 10); - } - if (typeof o.selected != 'number' && this.lis.filter('.ui-tabs-selected').length) { - o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected')); - } - o.selected = o.selected || 0; - } - else if (o.selected === null) { // usage of null is deprecated, TODO remove in next release - o.selected = -1; - } - - // sanity check - default to first tab... - o.selected = ((o.selected >= 0 && this.anchors[o.selected]) || o.selected < 0) ? o.selected : 0; - - // Take disabling tabs via class attribute from HTML - // into account and update option properly. - // A selected tab cannot become disabled. - o.disabled = $.unique(o.disabled.concat( - $.map(this.lis.filter('.ui-state-disabled'), - function(n, i) { return self.lis.index(n); } ) - )).sort(); - - if ($.inArray(o.selected, o.disabled) != -1) { - o.disabled.splice($.inArray(o.selected, o.disabled), 1); - } - - // highlight selected tab - this.panels.addClass('ui-tabs-hide'); - this.lis.removeClass('ui-tabs-selected ui-state-active'); - if (o.selected >= 0 && this.anchors.length) { // check for length avoids error when initializing empty list - this.panels.eq(o.selected).removeClass('ui-tabs-hide'); - this.lis.eq(o.selected).addClass('ui-tabs-selected ui-state-active'); - - // seems to be expected behavior that the show callback is fired - self.element.queue("tabs", function() { - self._trigger('show', null, self._ui(self.anchors[o.selected], self.panels[o.selected])); - }); - - this.load(o.selected); - } - - // clean up to avoid memory leaks in certain versions of IE 6 - $(window).bind('unload', function() { - self.lis.add(self.anchors).unbind('.tabs'); - self.lis = self.anchors = self.panels = null; - }); - - } - // update selected after add/remove - else { - o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected')); - } - - // update collapsible - this.element[o.collapsible ? 'addClass' : 'removeClass']('ui-tabs-collapsible'); - - // set or update cookie after init and add/remove respectively - if (o.cookie) { - this._cookie(o.selected, o.cookie); - } - - // disable tabs - for (var i = 0, li; (li = this.lis[i]); i++) { - $(li)[$.inArray(i, o.disabled) != -1 && - !$(li).hasClass('ui-tabs-selected') ? 'addClass' : 'removeClass']('ui-state-disabled'); - } - - // reset cache if switching from cached to not cached - if (o.cache === false) { - this.anchors.removeData('cache.tabs'); - } - - // remove all handlers before, tabify may run on existing tabs after add or option change - this.lis.add(this.anchors).unbind('.tabs'); - - if (o.event != 'mouseover') { - var addState = function(state, el) { - if (el.is(':not(.ui-state-disabled)')) { - el.addClass('ui-state-' + state); - } - }; - var removeState = function(state, el) { - el.removeClass('ui-state-' + state); - }; - this.lis.bind('mouseover.tabs', function() { - addState('hover', $(this)); - }); - this.lis.bind('mouseout.tabs', function() { - removeState('hover', $(this)); - }); - this.anchors.bind('focus.tabs', function() { - addState('focus', $(this).closest('li')); - }); - this.anchors.bind('blur.tabs', function() { - removeState('focus', $(this).closest('li')); - }); - } - - // set up animations - var hideFx, showFx; - if (o.fx) { - if ($.isArray(o.fx)) { - hideFx = o.fx[0]; - showFx = o.fx[1]; - } - else { - hideFx = showFx = o.fx; - } - } - - // Reset certain styles left over from animation - // and prevent IE's ClearType bug... - function resetStyle($el, fx) { - $el.css({ display: '' }); - if ($.browser.msie && fx.opacity) { - $el[0].style.removeAttribute('filter'); - } - } - - // Show a tab... - var showTab = showFx ? - function(clicked, $show) { - $(clicked).closest('li').removeClass('ui-state-default').addClass('ui-tabs-selected ui-state-active'); - $show.hide().removeClass('ui-tabs-hide') // avoid flicker that way - .animate(showFx, showFx.duration || 'normal', function() { - resetStyle($show, showFx); - self._trigger('show', null, self._ui(clicked, $show[0])); - }); - } : - function(clicked, $show) { - $(clicked).closest('li').removeClass('ui-state-default').addClass('ui-tabs-selected ui-state-active'); - $show.removeClass('ui-tabs-hide'); - self._trigger('show', null, self._ui(clicked, $show[0])); - }; - - // Hide a tab, $show is optional... - var hideTab = hideFx ? - function(clicked, $hide) { - $hide.animate(hideFx, hideFx.duration || 'normal', function() { - self.lis.removeClass('ui-tabs-selected ui-state-active').addClass('ui-state-default'); - $hide.addClass('ui-tabs-hide'); - resetStyle($hide, hideFx); - self.element.dequeue("tabs"); - }); - } : - function(clicked, $hide, $show) { - self.lis.removeClass('ui-tabs-selected ui-state-active').addClass('ui-state-default'); - $hide.addClass('ui-tabs-hide'); - self.element.dequeue("tabs"); - }; - - // attach tab event handler, unbind to avoid duplicates from former tabifying... - this.anchors.bind(o.event + '.tabs', function() { - var el = this, $li = $(this).closest('li'), $hide = self.panels.filter(':not(.ui-tabs-hide)'), - $show = $(self._sanitizeSelector(this.hash)); - - // If tab is already selected and not collapsible or tab disabled or - // or is already loading or click callback returns false stop here. - // Check if click handler returns false last so that it is not executed - // for a disabled or loading tab! - if (($li.hasClass('ui-tabs-selected') && !o.collapsible) || - $li.hasClass('ui-state-disabled') || - $li.hasClass('ui-state-processing') || - self._trigger('select', null, self._ui(this, $show[0])) === false) { - this.blur(); - return false; - } - - o.selected = self.anchors.index(this); - - self.abort(); - - // if tab may be closed - if (o.collapsible) { - if ($li.hasClass('ui-tabs-selected')) { - o.selected = -1; - - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - self.element.queue("tabs", function() { - hideTab(el, $hide); - }).dequeue("tabs"); - - this.blur(); - return false; - } - else if (!$hide.length) { - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - self.element.queue("tabs", function() { - showTab(el, $show); - }); - - self.load(self.anchors.index(this)); // TODO make passing in node possible, see also http://dev.jqueryui.com/ticket/3171 - - this.blur(); - return false; - } - } - - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - // show new tab - if ($show.length) { - if ($hide.length) { - self.element.queue("tabs", function() { - hideTab(el, $hide); - }); - } - self.element.queue("tabs", function() { - showTab(el, $show); - }); - - self.load(self.anchors.index(this)); - } - else { - throw 'jQuery UI Tabs: Mismatching fragment identifier.'; - } - - // Prevent IE from keeping other link focussed when using the back button - // and remove dotted border from clicked link. This is controlled via CSS - // in modern browsers; blur() removes focus from address bar in Firefox - // which can become a usability and annoying problem with tabs('rotate'). - if ($.browser.msie) { - this.blur(); - } - - }); - - // disable click in any case - this.anchors.bind('click.tabs', function(){return false;}); - - }, - - destroy: function() { - var o = 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 href = $.data(this, 'href.tabs'); - if (href) { - this.href = href; - } - var $this = $(this).unbind('.tabs'); - $.each(['href', 'load', 'cache'], function(i, prefix) { - $this.removeData(prefix + '.tabs'); - }); - }); - - this.lis.unbind('.tabs').add(this.panels).each(function() { - if ($.data(this, 'destroy.tabs')) { - $(this).remove(); - } - else { - $(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' - ].join(' ')); - } - }); - - if (o.cookie) { - this._cookie(null, o.cookie); - } - }, - - add: function(url, label, index) { - if (index === undefined) { - index = this.anchors.length; // append by default - } - - var self = this, o = this.options, - $li = $(o.tabTemplate.replace(/#\{href\}/g, url).replace(/#\{label\}/g, label)), - id = !url.indexOf('#') ? url.replace('#', '') : this._tabId($('a', $li)[0]); - - $li.addClass('ui-state-default ui-corner-top').data('destroy.tabs', true); - - // try to find an existing element before creating a new one - var $panel = $('#' + id); - if (!$panel.length) { - $panel = $(o.panelTemplate).attr('id', id).data('destroy.tabs', true); - } - $panel.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide'); - - if (index >= this.lis.length) { - $li.appendTo(this.list); - $panel.appendTo(this.list[0].parentNode); - } - else { - $li.insertBefore(this.lis[index]); - $panel.insertBefore(this.panels[index]); - } - - o.disabled = $.map(o.disabled, - function(n, i) { return n >= index ? ++n : n; }); - - this._tabify(); - - if (this.anchors.length == 1) { // after tabify - $li.addClass('ui-tabs-selected ui-state-active'); - $panel.removeClass('ui-tabs-hide'); - this.element.queue("tabs", function() { - self._trigger('show', null, self._ui(self.anchors[0], self.panels[0])); - }); - - this.load(0); - } - - // callback - this._trigger('add', null, this._ui(this.anchors[index], this.panels[index])); - }, - - remove: function(index) { - var o = this.options, $li = this.lis.eq(index).remove(), - $panel = this.panels.eq(index).remove(); - - // If selected tab was removed focus tab to the right or - // in case the last tab was removed the tab to the left. - if ($li.hasClass('ui-tabs-selected') && this.anchors.length > 1) { - this.select(index + (index + 1 < this.anchors.length ? 1 : -1)); - } - - o.disabled = $.map($.grep(o.disabled, function(n, i) { return n != index; }), - function(n, i) { return n >= index ? --n : n; }); - - this._tabify(); - - // callback - this._trigger('remove', null, this._ui($li.find('a')[0], $panel[0])); - }, - - enable: function(index) { - var o = this.options; - if ($.inArray(index, o.disabled) == -1) { - return; - } - - this.lis.eq(index).removeClass('ui-state-disabled'); - o.disabled = $.grep(o.disabled, function(n, i) { return n != index; }); - - // callback - this._trigger('enable', null, this._ui(this.anchors[index], this.panels[index])); - }, - - disable: function(index) { - var self = this, o = this.options; - if (index != o.selected) { // cannot disable already selected tab - this.lis.eq(index).addClass('ui-state-disabled'); - - o.disabled.push(index); - o.disabled.sort(); - - // callback - this._trigger('disable', null, this._ui(this.anchors[index], this.panels[index])); - } - }, - - select: function(index) { - if (typeof index == 'string') { - index = this.anchors.index(this.anchors.filter('[href$=' + index + ']')); - } - else if (index === null) { // usage of null is deprecated, TODO remove in next release - index = -1; - } - if (index == -1 && this.options.collapsible) { - index = this.options.selected; - } - - this.anchors.eq(index).trigger(this.options.event + '.tabs'); - }, - - load: function(index) { - var self = this, o = this.options, a = this.anchors.eq(index)[0], url = $.data(a, 'load.tabs'); - - this.abort(); - - // not remote or from cache - if (!url || this.element.queue("tabs").length !== 0 && $.data(a, 'cache.tabs')) { - this.element.dequeue("tabs"); - return; - } - - // load remote from here on - this.lis.eq(index).addClass('ui-state-processing'); - - if (o.spinner) { - var span = $('span', a); - span.data('label.tabs', span.html()).html(o.spinner); - } - - this.xhr = $.ajax($.extend({}, o.ajaxOptions, { - url: url, - success: function(r, s) { - $(self._sanitizeSelector(a.hash)).html(r); - - // take care of tab labels - self._cleanup(); - - if (o.cache) { - $.data(a, 'cache.tabs', true); // if loaded once do not load them again - } - - // callbacks - self._trigger('load', null, self._ui(self.anchors[index], self.panels[index])); - try { - o.ajaxOptions.success(r, s); - } - catch (e) {} - - // last, so that load event is fired before show... - self.element.dequeue("tabs"); - } - })); - }, - - abort: function() { - // stop possibly running animations - this.element.queue([]); - this.panels.stop(false, true); - - // terminate pending requests from other tabs - if (this.xhr) { - this.xhr.abort(); - delete this.xhr; - } - - // take care of tab labels - this._cleanup(); - - }, - - url: function(index, url) { - this.anchors.eq(index).removeData('cache.tabs').data('load.tabs', url); - }, - - length: function() { - return this.anchors.length; - } - -}); - -$.extend($.ui.tabs, { - version: '1.7', - getter: 'length', - defaults: { - ajaxOptions: null, - cache: false, - cookie: null, // e.g. { expires: 7, path: '/', domain: 'jquery.com', secure: true } - collapsible: false, - disabled: [], - event: 'click', - fx: null, // e.g. { height: 'toggle', opacity: 'toggle', duration: 200 } - idPrefix: 'ui-tabs-', - panelTemplate: '
    ', - spinner: 'Loading…', - tabTemplate: '
  • #{label}
  • ' - } -}); - -/* - * Tabs Extensions - */ - -/* - * Rotate - */ -$.extend($.ui.tabs.prototype, { - rotation: null, - rotate: function(ms, continuing) { - - var self = this, o = this.options; - - var rotate = self._rotate || (self._rotate = function(e) { - clearTimeout(self.rotation); - self.rotation = setTimeout(function() { - var t = o.selected; - self.select( ++t < self.anchors.length ? t : 0 ); - }, ms); - - if (e) { - e.stopPropagation(); - } - }); - - var stop = self._unrotate || (self._unrotate = !continuing ? - function(e) { - if (e.clientX) { // in case of a true click - self.rotate(null); - } - } : - function(e) { - t = o.selected; - rotate(); - }); - - // start rotation - if (ms) { - this.element.bind('tabsshow', rotate); - this.anchors.bind(o.event + '.tabs', stop); - rotate(); - } - // stop rotation - else { - clearTimeout(self.rotation); - this.element.unbind('tabsshow', rotate); - this.anchors.unbind(o.event + '.tabs', stop); - delete this._rotate; - delete this._unrotate; - } - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/src/main/resources/static/scripts/json.js b/cl_stream_mybatis/src/main/resources/static/scripts/json.js deleted file mode 100644 index 9ae240d..0000000 --- a/cl_stream_mybatis/src/main/resources/static/scripts/json.js +++ /dev/null @@ -1 +0,0 @@ -JSON=new function(){this.decode=function(){var filter,result,self,tmp;if($$("toString")){switch(arguments.length){case 2:self=arguments[0];filter=arguments[1];break;case 1:if($[typeof arguments[0]](arguments[0])===Function){self=this;filter=arguments[0];}else self=arguments[0];break;default:self=this;break;};if(rc.test(self)){try{result=e("(".concat(self,")"));if(filter&&result!==null&&(tmp=$[typeof result](result))&&(tmp===Array||tmp===Object)){for(self in result)result[self]=v(self,result)?filter(self,result[self]):result[self];}}catch(z){}}else{throw new JSONError("bad data");}};return result;};this.encode=function(){var self=arguments.length?arguments[0]:this,result,tmp;if(self===null)result="null";else if(self!==undefined&&(tmp=$[typeof self](self))){switch(tmp){case Array:result=[];for(var i=0,j=0,k=self.length;j -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/8/3 - Time: 15:53 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - 自动灌数系统 - - - - - - - - - - - - - - -<%--
    --%> -<%--
    选择Excel文件(可同时批量上传多个文件):--%> -<%--
    --%> -<%--<%––%>--%> -<%--<%––%>--%> -<%--
    <
    --%> -<%----%> -<%--${keyword}导入成功!!!!!
    --%> -<%--
    --%> -<%--
    --%> -<%--
    --%> -<%----%> -<%--${keyworderr}导入失败!!!!!
    --%> -<%--
    --%> -<%--
    --%> -
    -

    灌数系统

    -
    -=================================================================== - -
    -
    - kafka服务地址: - - topic名称:
    - topic消费组:
    - 业务类型: - - es服务: - - 项目名:
    - - es索引名称:
    - 调情感 - 不调情感 - - -
    - -
    - -
    -
    -
    - -------------------------------------------------------------------------- -
    - -
    -
    - - diff --git a/cl_stream_mybatis/src/main/webapp/WEB-INF/index.jsp b/cl_stream_mybatis/src/main/webapp/WEB-INF/index.jsp deleted file mode 100644 index d4431a7..0000000 --- a/cl_stream_mybatis/src/main/webapp/WEB-INF/index.jsp +++ /dev/null @@ -1,54 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/5/16 - Time: 16:58 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - -
    - -
    - - - diff --git a/cl_stream_mybatis/src/main/webapp/WEB-INF/uploaderr.jsp b/cl_stream_mybatis/src/main/webapp/WEB-INF/uploaderr.jsp deleted file mode 100644 index 054e10e..0000000 --- a/cl_stream_mybatis/src/main/webapp/WEB-INF/uploaderr.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/8/6 - Time: 13:58 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 上传失败 - - - 上传excel文件失败!!! - - diff --git a/cl_stream_mybatis/src/main/webapp/upload/财报模板 - 副本.xlsx b/cl_stream_mybatis/src/main/webapp/upload/财报模板 - 副本.xlsx deleted file mode 100644 index 1b796a2..0000000 Binary files a/cl_stream_mybatis/src/main/webapp/upload/财报模板 - 副本.xlsx and /dev/null differ diff --git a/cl_stream_mybatis/src/test/java/Test2.java b/cl_stream_mybatis/src/test/java/Test2.java deleted file mode 100644 index 3c5a098..0000000 --- a/cl_stream_mybatis/src/test/java/Test2.java +++ /dev/null @@ -1,32 +0,0 @@ -import com.bfd.mf.entity.DataSaveManager; -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.service.FieldNormalizService; -import com.bfd.mf.service.impl.FieldNormalizServiceImpl; -import com.bfd.mf.tools.ConnectionRmi; -import org.junit.Test; - -import java.rmi.RemoteException; -import java.util.HashMap; -import java.util.Map; - -public class Test2 { - private DataSaveManager datasaveManager = ConnectionRmi.getDataSaveManager(); - - @Test - public void test2(){ - FieldNormalizService fieldNormalizService = new FieldNormalizServiceImpl(); - FieldNormaliz fieldNormaliz = fieldNormalizService.getFieldNormalizById(1); - Map map = new HashMap(); - map.put("kafkaName", fieldNormaliz.getKafkaName()) ; - map.put("taskid", fieldNormaliz.getId()) ; - map.put("busniessType", fieldNormaliz.getBussinessType()) ; // 2=后台 1=前台 - map.put("esServerName",fieldNormaliz.getEsSerName()); // 1= 后台 2=前台 - map.put("indexName",fieldNormaliz.getEsSuffixNames()); - try { - datasaveManager.addTaskName(fieldNormaliz); - } catch (RemoteException e) { - e.printStackTrace(); - } - - } -} diff --git a/cl_stream_mybatis/src/test/test.iml b/cl_stream_mybatis/src/test/test.iml deleted file mode 100644 index 2f58334..0000000 --- a/cl_stream_mybatis/src/test/test.iml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar b/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar deleted file mode 100644 index bf53922..0000000 Binary files a/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar and /dev/null differ diff --git a/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar.original b/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar.original deleted file mode 100644 index ade2184..0000000 Binary files a/cl_stream_mybatis/target/cl_stream_mybatis-1.4.3.RELEASE.jar.original and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/importdb.jsp b/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/importdb.jsp deleted file mode 100644 index f4347f9..0000000 --- a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/importdb.jsp +++ /dev/null @@ -1,278 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/8/3 - Time: 15:53 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - 自动灌数系统 - - - - - - - - - - - - - - -<%--
    --%> -<%--
    选择Excel文件(可同时批量上传多个文件):--%> -<%--
    --%> -<%--<%––%>--%> -<%--<%––%>--%> -<%--
    <
    --%> -<%----%> -<%--${keyword}导入成功!!!!!
    --%> -<%--
    --%> -<%--
    --%> -<%--
    --%> -<%----%> -<%--${keyworderr}导入失败!!!!!
    --%> -<%--
    --%> -<%--
    --%> -
    -

    灌数系统

    -
    -=================================================================== - -
    -
    - kafka服务地址: - - topic名称:
    - topic消费组:
    - 业务类型: - - es服务: - - 项目名:
    - - es索引名称:
    - 调情感 - 不调情感 - - -
    - -
    - -
    -
    -
    - -------------------------------------------------------------------------- -
    - -
    -
    - - diff --git a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/index.jsp b/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/index.jsp deleted file mode 100644 index d4431a7..0000000 --- a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/index.jsp +++ /dev/null @@ -1,54 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/5/16 - Time: 16:58 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - -
    - -
    - - - diff --git a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/uploaderr.jsp b/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/uploaderr.jsp deleted file mode 100644 index 054e10e..0000000 --- a/cl_stream_mybatis/target/classes/META-INF/resources/WEB-INF/uploaderr.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: Administrator - Date: 2018/8/6 - Time: 13:58 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 上传失败 - - - 上传excel文件失败!!! - - diff --git a/cl_stream_mybatis/target/classes/META-INF/resources/upload/财报模板 - 副本.xlsx b/cl_stream_mybatis/target/classes/META-INF/resources/upload/财报模板 - 副本.xlsx deleted file mode 100644 index 1b796a2..0000000 Binary files a/cl_stream_mybatis/target/classes/META-INF/resources/upload/财报模板 - 副本.xlsx and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/application.properties b/cl_stream_mybatis/target/classes/application.properties deleted file mode 100644 index c32e8d5..0000000 --- a/cl_stream_mybatis/target/classes/application.properties +++ /dev/null @@ -1,23 +0,0 @@ - #mysql -spring.datasource.url=jdbc:mysql://172.18.1.152/field_normaliz?useUnicode=true&characterEncoding=utf-8 -spring.datasource.username=root -spring.datasource.password=Bfd123!@# -spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -#spring.datasource.url=jdbc:mysql://172.26.11.113:3306/intelligent_crawl?useUnicode=true&characterEncoding=utf-8 -#spring.datasource.username=root -#spring.datasource.password=bfd123 -#spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -#spring.datasource.url=jdbc:mysql://192.168.94.24:6446/intelligent_schema?useUnicode=true&characterEncoding=utf-8 -#spring.datasource.username=root -#spring.datasource.password=baifendian -#spring.datasource.driver-class-name=com.mysql.jdbc.Driver - -spring.mvc.view.suffix=.jsp -spring.mvc.view.prefix=/WEB-INF/ -spring.mvc.static-path-pattern=/static/** - - -#mybatis -mybatis.mapperLocations=classpath:com/bfd/mf/mapper/*.xml \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/TestmybatisApplication.class b/cl_stream_mybatis/target/classes/com/bfd/mf/TestmybatisApplication.class deleted file mode 100644 index 3e7661e..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/TestmybatisApplication.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/common/ExternalConnCache.class b/cl_stream_mybatis/target/classes/com/bfd/mf/common/ExternalConnCache.class deleted file mode 100644 index e853d2a..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/common/ExternalConnCache.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/common/PageBean.class b/cl_stream_mybatis/target/classes/com/bfd/mf/common/PageBean.class deleted file mode 100644 index e47280a..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/common/PageBean.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/config/XmlConfiguration.class b/cl_stream_mybatis/target/classes/com/bfd/mf/config/XmlConfiguration.class deleted file mode 100644 index 4eaea4c..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/config/XmlConfiguration.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/controller/CompanyController.class b/cl_stream_mybatis/target/classes/com/bfd/mf/controller/CompanyController.class deleted file mode 100644 index 97a8055..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/controller/CompanyController.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldInfo.class b/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldInfo.class deleted file mode 100644 index 3a3109c..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldInfo.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldNormaliz.class b/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldNormaliz.class deleted file mode 100644 index 9b182eb..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/FieldNormaliz.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/Record.class b/cl_stream_mybatis/target/classes/com/bfd/mf/entity/Record.class deleted file mode 100644 index 82377d5..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/Record.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/StatInfo.class b/cl_stream_mybatis/target/classes/com/bfd/mf/entity/StatInfo.class deleted file mode 100644 index e9f3193..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/entity/StatInfo.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/es/ESHandler.class b/cl_stream_mybatis/target/classes/com/bfd/mf/es/ESHandler.class deleted file mode 100644 index d80620c..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/es/ESHandler.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/FieldNormalizMapper.class b/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/FieldNormalizMapper.class deleted file mode 100644 index fdb7a7d..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/FieldNormalizMapper.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/StatMapper.class b/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/StatMapper.class deleted file mode 100644 index ac915e1..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/StatMapper.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/fieldNormaliz.xml b/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/fieldNormaliz.xml deleted file mode 100644 index 875aff9..0000000 --- a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/fieldNormaliz.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - id, kafka_server, es_server, bussiness_type,es_index_name,kafka_topic,groupid,project_name,is_semtiment_api,kafka_suffix_name - - - - - - - - INSERT INTO - mf_kafka_info - (kafka_server,kafka_topic,groupid,es_server,bussiness_type,es_index_name,create_time,project_name,is_semtiment_api,kafka_suffix_name) - VALUES - (#{kafkaSerName}, #{kafkaName}, #{groupId}, #{esSerName}, #{bussinessType}, #{esSuffixNames}, now(), #{projectName}, #{isSemtimentApi}, #{kafkaSuffixName}) - - - - UPDATE - mf_kafka_info - SET - status = 1 - WHERE - id = #{id} - - - - DELETE FROM - mf_kafka_info - WHERE - id = #{id} - - \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/statInfo.xml b/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/statInfo.xml deleted file mode 100644 index 13bdb44..0000000 --- a/cl_stream_mybatis/target/classes/com/bfd/mf/mapper/statInfo.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - check_day, kafka_name, kafka_rows, index_name, index_rows, diff_rows, add_time - - - - - - INSERT INTO - mf_check_rows_list - (check_day,kafka_name,kafka_rows,index_name,index_rows,diff_rows,add_time) - VALUES - (#{checkDay}, #{kafkaName}, #{kafkaRows}, #{indexName}, #{indexRows}, #{diffRows}, now()) - - - - UPDATE - mf_check_rows_list - SET - kafka_rows = #{kafkaRows}, index_rows = #{indexRows} , diff_rows = #{diffRows} - WHERE - check_day = #{checkDay} and kafka_name = #{kafkaName} and index_name = #{indexName} - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/SendTask.class b/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/SendTask.class deleted file mode 100644 index 30739e3..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/SendTask.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/impl/SendTaskImpl.class b/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/impl/SendTaskImpl.class deleted file mode 100644 index 767bc99..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/sendTask/impl/SendTaskImpl.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/FieldNormalizService.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/FieldNormalizService.class deleted file mode 100644 index f3a2e95..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/FieldNormalizService.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/MetaSearchService.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/MetaSearchService.class deleted file mode 100644 index 4dfba44..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/MetaSearchService.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/StatService.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/StatService.class deleted file mode 100644 index d2b0a9d..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/StatService.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/FieldNormalizServiceImpl.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/FieldNormalizServiceImpl.class deleted file mode 100644 index ca59f1b..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/FieldNormalizServiceImpl.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/MetaSearchServiceImpl.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/MetaSearchServiceImpl.class deleted file mode 100644 index c97a65d..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/MetaSearchServiceImpl.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/StatServiceImpl.class b/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/StatServiceImpl.class deleted file mode 100644 index f921206..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/service/impl/StatServiceImpl.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/spring/applicationContext.xml b/cl_stream_mybatis/target/classes/com/bfd/mf/spring/applicationContext.xml deleted file mode 100644 index 1992f07..0000000 --- a/cl_stream_mybatis/target/classes/com/bfd/mf/spring/applicationContext.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - classpath:/datasources.properties - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/com/bfd/mf/tools/ConnectionRmi.class b/cl_stream_mybatis/target/classes/com/bfd/mf/tools/ConnectionRmi.class deleted file mode 100644 index efd38ec..0000000 Binary files a/cl_stream_mybatis/target/classes/com/bfd/mf/tools/ConnectionRmi.class and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/datasources.properties b/cl_stream_mybatis/target/classes/datasources.properties deleted file mode 100644 index 8ef3802..0000000 --- a/cl_stream_mybatis/target/classes/datasources.properties +++ /dev/null @@ -1,4 +0,0 @@ -sms_username=0c44a92f900c5 -sms_password=100817121800010094 -sms_url=http://www.xcapi.net:18018/xcapi/smsApiSend.do -# diff --git a/cl_stream_mybatis/target/classes/log4j.properties b/cl_stream_mybatis/target/classes/log4j.properties deleted file mode 100644 index 5d6e92f..0000000 --- a/cl_stream_mybatis/target/classes/log4j.properties +++ /dev/null @@ -1,18 +0,0 @@ -log4j.rootLogger=DEBUG, error - -###### error appender definition ####### -log4j.appender.error=org.apache.log4j.DailyRollingFileAppender -log4j.appender.error.File=logs/sdkclient_error.log -log4j.appender.error.Append=true -log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH -log4j.appender.error.layout=org.apache.log4j.PatternLayout -log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] %m%n - -#error only -log4j.appender.error.filter.F1=org.apache.log4j.varia.LevelRangeFilter -log4j.appender.error.filter.F1.LevelMin=ERROR -log4j.appender.error.filter.F1.LevelMax=ERROR -# -log4j.appender.error.filter.F2=org.apache.log4j.varia.LevelMatchFilter -log4j.appender.error.filter.F2.levelToMatch=WARN -log4j.appender.error.filter.F2.acceptOnMatch=false \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/AjaxObject.js b/cl_stream_mybatis/target/classes/static/scripts/AjaxObject.js deleted file mode 100644 index d717d7a..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/AjaxObject.js +++ /dev/null @@ -1,124 +0,0 @@ -/*---------------------------- Ajax 请求对象 ----------------------------*/ - -/************************************************** - -- 属性: - url: 请求地址; - method: 请求方法(GET 或者 POST),默认为 GET; - flag: 异步或者同步请求(true 或者 false),默认为 true; - info: 请求参数,默认为 null,注:只有当请求方法为 POST 时,才被使用; - //isEval: 是否调用 eval() 函数(true 或者 false),默认为为 false; - //callback: 是否设置回调函数(true或者false),默认为 true; - result: Ajax 请求的响应结果 - - -- 方法: - executeRequest: 执行 Ajax 请求的方法; - onReady: 绑定函数到 req.onreadystatechange 事件; - dealResult: 只提供了函数名称,用来设置用户自己的函数。注:在用户自己的函数中,用来处理 Ajax 请求的返回结果。 -**************************************************/ -function Ajax(url, method, flag, info) { - this.url = url; - this.method = method || "GET"; - this.flag = (flag == false) ? false : (flag || true); - this.info = info || null; - //this.isEval = false; - //this.callback = true; - this.result = null; - var req = null; // req: XMLHttpRequest 对象; - - // 实例化 req 对象 - (function() { - if (window.XMLHttpRequest) { - req = new XMLHttpRequest(); - if (req.overrideMimeType) { - //req.overrideMimeType("text/xml"); - } - } else if (window.ActiveXObject) { - try { - req = new ActiveXObject("Msxml2.XMLHTTP"); - } catch (e) { - try { - req = new ActiveXObject("Microsoft.XMLHTTP"); - } catch (e) { - alert("该浏览器不支持 Ajax !"); - req = null; - } - } - - /* Msxml2.XMLHTTP.5.0, 4.0, 3.0 都可以,2.0 和 1.0 不可以 - for (var i = 5; i; i--) { - try { - alert(i); - if (i != 2) { - req = new ActiveXObject("Msxml2.XMLHTTP." + i + ".0"); - } - - } catch (e) { - alert(e); - continue; - } - }*/ - } - }()); - this.executeRequest = function () { - if (!req || !this.url) { - alert("req 为空或者 url 为空!"); - return; - } - - if (this.url.indexOf("_id_=") != -1) { - // 不改变 - } else { - // 保证每次请求的 URL 都不一样,防止缓存 - var rand = "_id_=" + Math.random(); - if (this.url.indexOf("?") != -1) { - this.url += "&" + rand; - } else { - this.url += "?" + rand; - } - } - - /*// 判断,是否设置回调函数 - if (this.callback) { - this.onReady(req); - }*/ - // 设置回调函数 - this.onReady(req, this); - // 初始化 req 对象 - req.open(this.method, this.url, this.flag); - - // 判断,是否为 POST 请求 - if ((this.method.toUpperCase() == "POST") && this.info) { - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); - } - // 向服务器端发送请求 - req.send(this.info); - - /*// 判断,是否执行 eval() 函数 - if (this.isEval) { - eval(req.responseText); - }*/ - }; - this.onReady = function (req, ajax) { - req.onreadystatechange = function () { - if (req.readyState == 4) { - var result = req.responseText; - if (req.status == 200) { - ajax.result = result; - if (ajax.dealResult) { - ajax.dealResult(result); - } else { - var message = "请为 Ajax对象的 dealResult 设置回调函数!"; - message += "\r\n例如:Ajax对象.dealResult=function(result) { Your Code }"; - message += "\r\n其中,result 参数为服务器端返回的响应数据。"; - //alert(message); - } - } else { - //alert("响应错误!"); - - //alert(result); - } - } - }; - }; - this.dealResult; // = function(result) { }; -} diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery.TableExcel.js b/cl_stream_mybatis/target/classes/static/scripts/jquery.TableExcel.js deleted file mode 100644 index 5c42ee3..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery.TableExcel.js +++ /dev/null @@ -1,203 +0,0 @@ -/* -生成EXCEL的数据格式定义: -{ - name: '', - widths: [xxx,…,xxx], - clazz" '', - style: '', - data: [ - { - height: xxx, - clazz" '', - style: '', - cell: [ - { - range: 'xxx.xxx', - text: '', - clazz: '', - style: '' -},…{ -… -} -] - },…,{ - } -], …,[ -… -] -} -*/ -(function($) { - $.fn.exportTableData = function(options) { - var opts = $.extend({}, $.fn.exportTableData.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var result = { - widths: [], - data: [] - }; - - readCSS(result, table); - - var cols = table.find('col'); - cols.each(function(i) { - result.widths[i] = $(this).width(); - }) - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - result.data[row] = { - height: tr.height(), - cell: [] - }; - - readCSS(result.data[row], tr); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - var val = td.html(); - if (opts.callback) - val = opts.callback(tr, td, row, col, val); - - result.data[row].cell[col] = { - text: val - } - - readRange(result.data[row].cell[col], td); - readCSS(result.data[row].cell[col], td); - }) - }) - - return result; - - function readRange(data, el) { - var rowSpan = el.attr('rowSpan'); - var colSpan = el.attr('colSpan'); - - rowSpan = rowSpan ? parseInt(rowSpan) : 1; - colSpan = colSpan ? parseInt(colSpan) : 1; - - if (rowSpan != 1 || colSpan != 1) - data.range = rowSpan + '.' + colSpan; - } - - function readCSS(data, el) { - var clazz = el.attr('class'); - if (clazz) - data.clazz = clazz; - - var style = el.attr('style'); - if (style) - data.style = style; - } - }; - - $.fn.exportTableData.defaults = { - callback: function(tr, td, row, col, val) { - return val; - } - }; - - $.fn.parseImportTableConfig = function(options) { - var opts = $.extend({}, $.fn.parseImportTableConfig.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var result = ''; - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - if (opts.callback) { - if (opts.callback({ - tr: tr, - td: td, - row: row, - col: col - }) == false) - return; - } - - result += row + '.' + col + ' '; - }) - }) - - return result; - }; - - $.fn.parseImportTableConfig.defaults = { - callback: function(params) { - return true; - } - }; - - $.fn.importTableData = function(data, options) { - var opts = $.extend({}, $.fn.importTableData.defaults, options); - - var table = $(this[0]); - if (table.attr('nodeName').toUpperCase() != 'TABLE') - return null; - - var importTds = []; - - var trs = table.find('tr'); - trs.each(function(row) { - var tr = $(this); - - var tds = tr.find('td'); - tds.each(function(col) { - var td = $(this); - - var key = row + '.' + col; - if (typeof(data[key]) == 'undefined') - return; - - var params = { - tr: tr, - td: td, - row: row, - col: col, - val: data[key] - }; - - if (opts.callback) { - if (opts.callback(params) == false) - return; - } - - var val = params.val; - var orgVal = td.html(); - if (val != null && val != orgVal) { - td.html(val); - - importTds[importTds.length] = td; - } - }) - }) - - if (importTds.length > 0 && opts.finish) - opts.finish(importTds); - }; - - $.fn.importTableData.defaults = { - callback: function(params) { - return true; - }, - finish: function(tds) { - } - }; -})(jQuery); \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/jquery-1.3.2.min.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/jquery-1.3.2.min.js deleted file mode 100644 index b1ae21d..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("",""]||!O.indexOf("",""]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
    "]||!O.indexOf("",""]||(!O.indexOf("",""]||!O.indexOf("",""]||!o.support.htmlSerialize&&[1,"div
    ","
    "]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return UT[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="

    ";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="
    ";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("
    ").append(M.responseText.replace(//g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='
    ';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})(); \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/plugins/ajaxfileupload.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/plugins/ajaxfileupload.js deleted file mode 100644 index 762aaf1..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/plugins/ajaxfileupload.js +++ /dev/null @@ -1,209 +0,0 @@ - -jQuery.extend({ - - - createUploadIframe: function(id, uri) - { - //create frame - var frameId = 'jUploadFrame' + id; - - if(window.ActiveXObject) { - var io = document.createElement('' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '
    '; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '' + monthNames[drawMonth] + ' '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += ''; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '' + drawYear + ''; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += ''; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '
    '; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); -/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.progressbar", { - - _init: function() { - - this.element - .addClass("ui-progressbar" - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all") - .attr({ - role: "progressbar", - "aria-valuemin": this._valueMin(), - "aria-valuemax": this._valueMax(), - "aria-valuenow": this._value() - }); - - this.valueDiv = $('
    ').appendTo(this.element); - - 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") - .removeData("progressbar") - .unbind(".progressbar"); - - this.valueDiv.remove(); - - $.widget.prototype.destroy.apply(this, arguments); - - }, - - value: function(newValue) { - arguments.length && this._setData("value", newValue); - return this._value(); - }, - - _setData: function(key, value) { - - switch (key) { - case 'value': - this.options.value = value; - this._refreshValue(); - this._trigger('change', null, {}); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _valueMin: function() { - var valueMin = 0; - return valueMin; - }, - - _valueMax: function() { - var valueMax = 100; - return valueMax; - }, - - _refreshValue: function() { - var value = this.value(); - this.valueDiv[value == this._valueMax() ? 'addClass' : 'removeClass']("ui-corner-right"); - this.valueDiv.width(value + '%'); - this.element.attr("aria-valuenow", value); - } - -}); - -$.extend($.ui.progressbar, { - version: "1.7", - defaults: { - value: 0 - } -}); - -})(jQuery); -/* - * jQuery UI Effects 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ -;jQuery.effects || (function($) { - -$.effects = { - version: "1.7", - - // Saves a set of properties in a data storage - save: function(element, set) { - for(var i=0; i < set.length; i++) { - if(set[i] !== null) element.data("ec.storage."+set[i], element[0].style[set[i]]); - } - }, - - // Restores a set of previously saved properties from a data storage - restore: function(element, set) { - for(var i=0; i < set.length; i++) { - if(set[i] !== null) element.css(set[i], element.data("ec.storage."+set[i])); - } - }, - - setMode: function(el, mode) { - if (mode == 'toggle') mode = el.is(':hidden') ? 'show' : 'hide'; // Set for toggle - return mode; - }, - - getBaseline: function(origin, original) { // Translates a [top,left] array into a baseline value - // this should be a little more flexible in the future to handle a string & hash - var y, x; - switch (origin[0]) { - case 'top': y = 0; break; - case 'middle': y = 0.5; break; - case 'bottom': y = 1; break; - default: y = origin[0] / original.height; - }; - switch (origin[1]) { - case 'left': x = 0; break; - case 'center': x = 0.5; break; - case 'right': x = 1; break; - default: x = origin[1] / original.width; - }; - return {x: x, y: y}; - }, - - // Wraps the element around a wrapper that copies position properties - createWrapper: function(element) { - - //if the element is already wrapped, return it - if (element.parent().is('.ui-effects-wrapper')) - return element.parent(); - - //Cache width,height and float properties of the element, and create a wrapper around it - var props = { width: element.outerWidth(true), height: element.outerHeight(true), 'float': element.css('float') }; - element.wrap('
    '); - var wrapper = element.parent(); - - //Transfer the positioning of the element to the wrapper - if (element.css('position') == 'static') { - wrapper.css({ position: 'relative' }); - element.css({ position: 'relative'} ); - } else { - var top = element.css('top'); if(isNaN(parseInt(top,10))) top = 'auto'; - var left = element.css('left'); if(isNaN(parseInt(left,10))) left = 'auto'; - wrapper.css({ position: element.css('position'), top: top, left: left, zIndex: element.css('z-index') }).show(); - element.css({position: 'relative', top: 0, left: 0 }); - } - - wrapper.css(props); - return wrapper; - }, - - removeWrapper: function(element) { - if (element.parent().is('.ui-effects-wrapper')) - return element.parent().replaceWith(element); - return element; - }, - - setTransition: function(element, list, factor, value) { - value = value || {}; - $.each(list, function(i, x){ - unit = element.cssUnit(x); - if (unit[0] > 0) value[x] = unit[0] * factor + unit[1]; - }); - return value; - }, - - //Base function to animate from one class to another in a seamless transition - animateClass: function(value, duration, easing, callback) { - - var cb = (typeof easing == "function" ? easing : (callback ? callback : null)); - var ea = (typeof easing == "string" ? easing : null); - - return this.each(function() { - - var offset = {}; var that = $(this); var oldStyleAttr = that.attr("style") || ''; - if(typeof oldStyleAttr == 'object') oldStyleAttr = oldStyleAttr["cssText"]; /* Stupidly in IE, style is a object.. */ - if(value.toggle) { that.hasClass(value.toggle) ? value.remove = value.toggle : value.add = value.toggle; } - - //Let's get a style offset - var oldStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle)); - if(value.add) that.addClass(value.add); if(value.remove) that.removeClass(value.remove); - var newStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle)); - if(value.add) that.removeClass(value.add); if(value.remove) that.addClass(value.remove); - - // The main function to form the object for animation - for(var n in newStyle) { - if( typeof newStyle[n] != "function" && newStyle[n] /* No functions and null properties */ - && n.indexOf("Moz") == -1 && n.indexOf("length") == -1 /* No mozilla spezific render properties. */ - && newStyle[n] != oldStyle[n] /* Only values that have changed are used for the animation */ - && (n.match(/color/i) || (!n.match(/color/i) && !isNaN(parseInt(newStyle[n],10)))) /* Only things that can be parsed to integers or colors */ - && (oldStyle.position != "static" || (oldStyle.position == "static" && !n.match(/left|top|bottom|right/))) /* No need for positions when dealing with static positions */ - ) offset[n] = newStyle[n]; - } - - that.animate(offset, duration, ea, function() { // Animate the newly constructed offset object - // Change style attribute back to original. For stupid IE, we need to clear the damn object. - if(typeof $(this).attr("style") == 'object') { $(this).attr("style")["cssText"] = ""; $(this).attr("style")["cssText"] = oldStyleAttr; } else $(this).attr("style", oldStyleAttr); - if(value.add) $(this).addClass(value.add); if(value.remove) $(this).removeClass(value.remove); - if(cb) cb.apply(this, arguments); - }); - - }); - } -}; - - -function _normalizeArguments(a, m) { - - var o = a[1] && a[1].constructor == Object ? a[1] : {}; if(m) o.mode = m; - var speed = a[1] && a[1].constructor != Object ? a[1] : (o.duration ? o.duration : a[2]); //either comes from options.duration or the secon/third argument - speed = $.fx.off ? 0 : typeof speed === "number" ? speed : $.fx.speeds[speed] || $.fx.speeds._default; - var callback = o.callback || ( $.isFunction(a[1]) && a[1] ) || ( $.isFunction(a[2]) && a[2] ) || ( $.isFunction(a[3]) && a[3] ); - - return [a[0], o, speed, callback]; - -} - -//Extend the methods of jQuery -$.fn.extend({ - - //Save old methods - _show: $.fn.show, - _hide: $.fn.hide, - __toggle: $.fn.toggle, - _addClass: $.fn.addClass, - _removeClass: $.fn.removeClass, - _toggleClass: $.fn.toggleClass, - - // New effect methods - effect: function(fx, options, speed, callback) { - return $.effects[fx] ? $.effects[fx].call(this, {method: fx, options: options || {}, duration: speed, callback: callback }) : null; - }, - - show: function() { - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0]))) - return this._show.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'show')); - } - }, - - hide: function() { - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0]))) - return this._hide.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'hide')); - } - }, - - toggle: function(){ - if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0])) || (arguments[0].constructor == Function)) - return this.__toggle.apply(this, arguments); - else { - return this.effect.apply(this, _normalizeArguments(arguments, 'toggle')); - } - }, - - addClass: function(classNames, speed, easing, callback) { - return speed ? $.effects.animateClass.apply(this, [{ add: classNames },speed,easing,callback]) : this._addClass(classNames); - }, - removeClass: function(classNames,speed,easing,callback) { - return speed ? $.effects.animateClass.apply(this, [{ remove: classNames },speed,easing,callback]) : this._removeClass(classNames); - }, - toggleClass: function(classNames,speed,easing,callback) { - return ( (typeof speed !== "boolean") && speed ) ? $.effects.animateClass.apply(this, [{ toggle: classNames },speed,easing,callback]) : this._toggleClass(classNames, speed); - }, - morph: function(remove,add,speed,easing,callback) { - return $.effects.animateClass.apply(this, [{ add: add, remove: remove },speed,easing,callback]); - }, - switchClass: function() { - return this.morph.apply(this, arguments); - }, - - // helper functions - cssUnit: function(key) { - var style = this.css(key), val = []; - $.each( ['em','px','%','pt'], function(i, unit){ - if(style.indexOf(unit) > 0) - val = [parseFloat(style), unit]; - }); - return val; - } -}); - -/* - * jQuery Color Animations - * Copyright 2007 John Resig - * Released under the MIT and GPL licenses. - */ - -// We override the animation for all of these color styles -$.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){ - $.fx.step[attr] = function(fx) { - if ( fx.state == 0 ) { - fx.start = getColor( fx.elem, attr ); - fx.end = getRGB( fx.end ); - } - - fx.elem.style[attr] = "rgb(" + [ - Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0],10), 255), 0), - Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1],10), 255), 0), - Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2],10), 255), 0) - ].join(",") + ")"; - }; -}); - -// Color Conversion functions from highlightFade -// By Blair Mitchelmore -// http://jquery.offput.ca/highlightFade/ - -// Parse strings looking for color tuples [255,255,255] -function getRGB(color) { - var result; - - // Check if we're already dealing with an array of colors - if ( color && color.constructor == Array && color.length == 3 ) - return color; - - // Look for rgb(num,num,num) - if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)) - return [parseInt(result[1],10), parseInt(result[2],10), parseInt(result[3],10)]; - - // Look for rgb(num%,num%,num%) - if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)) - return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55]; - - // Look for #a0b1c2 - if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)) - return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)]; - - // Look for #fff - if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)) - return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)]; - - // Look for rgba(0, 0, 0, 0) == transparent in Safari 3 - if (result = /rgba\(0, 0, 0, 0\)/.exec(color)) - return colors['transparent']; - - // Otherwise, we're most likely dealing with a named color - return colors[$.trim(color).toLowerCase()]; -} - -function getColor(elem, attr) { - var color; - - do { - color = $.curCSS(elem, attr); - - // Keep going until we find an element that has color, or we hit the body - if ( color != '' && color != 'transparent' || $.nodeName(elem, "body") ) - break; - - attr = "backgroundColor"; - } while ( elem = elem.parentNode ); - - return getRGB(color); -}; - -// Some named colors to work with -// From Interface by Stefan Petre -// http://interface.eyecon.ro/ - -var colors = { - 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] -}; - -/* - * 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 -$.easing.jswing = $.easing.swing; - -$.extend($.easing, -{ - def: 'easeOutQuad', - swing: function (x, t, b, c, d) { - //alert($.easing.default); - return $.easing[$.easing.def](x, t, b, c, d); - }, - easeInQuad: function (x, t, b, c, d) { - return c*(t/=d)*t + b; - }, - easeOutQuad: function (x, t, b, c, d) { - return -c *(t/=d)*(t-2) + b; - }, - easeInOutQuad: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t + b; - return -c/2 * ((--t)*(t-2) - 1) + b; - }, - easeInCubic: function (x, t, b, c, d) { - return c*(t/=d)*t*t + b; - }, - easeOutCubic: function (x, t, b, c, d) { - return c*((t=t/d-1)*t*t + 1) + b; - }, - easeInOutCubic: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t + b; - return c/2*((t-=2)*t*t + 2) + b; - }, - easeInQuart: function (x, t, b, c, d) { - return c*(t/=d)*t*t*t + b; - }, - easeOutQuart: function (x, t, b, c, d) { - return -c * ((t=t/d-1)*t*t*t - 1) + b; - }, - easeInOutQuart: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t*t + b; - return -c/2 * ((t-=2)*t*t*t - 2) + b; - }, - easeInQuint: function (x, t, b, c, d) { - return c*(t/=d)*t*t*t*t + b; - }, - easeOutQuint: function (x, t, b, c, d) { - return c*((t=t/d-1)*t*t*t*t + 1) + b; - }, - easeInOutQuint: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b; - return c/2*((t-=2)*t*t*t*t + 2) + b; - }, - easeInSine: function (x, t, b, c, d) { - return -c * Math.cos(t/d * (Math.PI/2)) + c + b; - }, - easeOutSine: function (x, t, b, c, d) { - return c * Math.sin(t/d * (Math.PI/2)) + b; - }, - easeInOutSine: function (x, t, b, c, d) { - return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; - }, - easeInExpo: function (x, t, b, c, d) { - return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b; - }, - easeOutExpo: function (x, t, b, c, d) { - return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b; - }, - easeInOutExpo: function (x, t, b, c, d) { - if (t==0) return b; - if (t==d) return b+c; - if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b; - return c/2 * (-Math.pow(2, -10 * --t) + 2) + b; - }, - easeInCirc: function (x, t, b, c, d) { - return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b; - }, - easeOutCirc: function (x, t, b, c, d) { - return c * Math.sqrt(1 - (t=t/d-1)*t) + b; - }, - easeInOutCirc: function (x, t, b, c, d) { - if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; - return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; - }, - easeInElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3; - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; - }, - easeOutElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3; - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b; - }, - easeInOutElastic: function (x, t, b, c, d) { - var s=1.70158;var p=0;var a=c; - if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5); - if (a < Math.abs(c)) { a=c; var s=p/4; } - else var s = p/(2*Math.PI) * Math.asin (c/a); - if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; - return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b; - }, - easeInBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - return c*(t/=d)*t*((s+1)*t - s) + b; - }, - easeOutBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; - }, - easeInOutBack: function (x, t, b, c, d, s) { - if (s == undefined) s = 1.70158; - if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; - return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; - }, - easeInBounce: function (x, t, b, c, d) { - return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b; - }, - easeOutBounce: function (x, t, b, c, d) { - if ((t/=d) < (1/2.75)) { - return c*(7.5625*t*t) + b; - } else if (t < (2/2.75)) { - return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; - } else if (t < (2.5/2.75)) { - return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; - } else { - return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; - } - }, - easeInOutBounce: function (x, t, b, c, d) { - if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b; - return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b; - } -}); - -/* - * - * TERMS OF USE - EASING EQUATIONS - * - * Open source under the BSD License. - * - * Copyright 2001 Robert Penner - * 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. - * - */ - -})(jQuery); -/* - * jQuery UI Effects Blind 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Blind - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.blind = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'vertical'; // Default direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var ref = (direction == 'vertical') ? 'height' : 'width'; - var distance = (direction == 'vertical') ? wrapper.height() : wrapper.width(); - if(mode == 'show') wrapper.css(ref, 0); // Shift - - // Animation - var animation = {}; - animation[ref] = mode == 'show' ? distance : 0; - - // Animate - wrapper.animate(animation, o.duration, o.options.easing, function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Bounce 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Bounce - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.bounce = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var direction = o.options.direction || 'up'; // Default direction - var distance = o.options.distance || 20; // Default distance - var times = o.options.times || 5; // Default # of times - var speed = o.duration || 250; // Default speed per bounce - if (/show|hide/.test(mode)) props.push('opacity'); // Avoid touching opacity to prevent clearType and PNG issues in IE - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 3 : el.outerWidth({margin:true}) / 3); - if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift - if (mode == 'hide') distance = distance / (times * 2); - if (mode != 'hide') times--; - - // Animate - if (mode == 'show') { // Show Bounce - var animation = {opacity: 1}; - animation[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation, speed / 2, o.options.easing); - distance = distance / 2; - times--; - }; - for (var i = 0; i < times; i++) { // Bounces - var animation1 = {}, animation2 = {}; - animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing); - distance = (mode == 'hide') ? distance * 2 : distance / 2; - }; - if (mode == 'hide') { // Last Bounce - var animation = {opacity: 0}; - animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - el.animate(animation, speed / 2, o.options.easing, function(){ - el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - } else { - var animation1 = {}, animation2 = {}; - animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance; - el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing, function(){ - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - }; - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Clip 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Clip - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.clip = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','height','width']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'vertical'; // Default direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var animate = el[0].tagName == 'IMG' ? wrapper : el; - var ref = { - size: (direction == 'vertical') ? 'height' : 'width', - position: (direction == 'vertical') ? 'top' : 'left' - }; - var distance = (direction == 'vertical') ? animate.height() : animate.width(); - if(mode == 'show') { animate.css(ref.size, 0); animate.css(ref.position, distance / 2); } // Shift - - // Animation - var animation = {}; - animation[ref.size] = mode == 'show' ? distance : 0; - animation[ref.position] = mode == 'show' ? 0 : distance / 2; - - // Animate - animate.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Drop 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Drop - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.drop = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','opacity']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var direction = o.options.direction || 'left'; // Default Direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2); - if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift - - // Animation - var animation = {opacity: mode == 'show' ? 1 : 0}; - animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Explode 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Explode - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.explode = function(o) { - - return this.queue(function() { - - var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3; - var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3; - - o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode; - var el = $(this).show().css('visibility', 'hidden'); - var offset = el.offset(); - - //Substract the margins - not fixing the problem yet. - offset.top -= parseInt(el.css("marginTop"),10) || 0; - offset.left -= parseInt(el.css("marginLeft"),10) || 0; - - var width = el.outerWidth(true); - var height = el.outerHeight(true); - - for(var i=0;i
    ') - .css({ - position: 'absolute', - visibility: 'visible', - left: -j*(width/cells), - top: -i*(height/rows) - }) - .parent() - .addClass('ui-effects-explode') - .css({ - position: 'absolute', - overflow: 'hidden', - width: width/cells, - height: height/rows, - left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0), - top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0), - opacity: o.options.mode == 'show' ? 0 : 1 - }).animate({ - left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)), - top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)), - opacity: o.options.mode == 'show' ? 1 : 0 - }, o.duration || 500); - } - } - - // Set a timeout, to call the callback approx. when the other animations have finished - setTimeout(function() { - - o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide(); - if(o.callback) o.callback.apply(el[0]); // Callback - el.dequeue(); - - $('div.ui-effects-explode').remove(); - - }, o.duration || 500); - - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Fold 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Fold - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.fold = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var size = o.options.size || 15; // Default fold size - var horizFirst = !(!o.options.horizFirst); // Ensure a boolean value - var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2; - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var widthFirst = ((mode == 'show') != horizFirst); - var ref = widthFirst ? ['width', 'height'] : ['height', 'width']; - var distance = widthFirst ? [wrapper.width(), wrapper.height()] : [wrapper.height(), wrapper.width()]; - var percent = /([0-9]+)%/.exec(size); - if(percent) size = parseInt(percent[1],10) / 100 * distance[mode == 'hide' ? 0 : 1]; - if(mode == 'show') wrapper.css(horizFirst ? {height: 0, width: size} : {height: size, width: 0}); // Shift - - // Animation - var animation1 = {}, animation2 = {}; - animation1[ref[0]] = mode == 'show' ? distance[0] : size; - animation2[ref[1]] = mode == 'show' ? distance[1] : 0; - - // Animate - wrapper.animate(animation1, duration, o.options.easing) - .animate(animation2, duration, o.options.easing, function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(el[0], arguments); // Callback - el.dequeue(); - }); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Highlight 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Highlight - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.highlight = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['backgroundImage','backgroundColor','opacity']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var color = o.options.color || "#ffff99"; // Default highlight color - var oldColor = el.css("backgroundColor"); - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - el.css({backgroundImage: 'none', backgroundColor: color}); // Shift - - // Animation - var animation = {backgroundColor: oldColor }; - if (mode == "hide") animation['opacity'] = 0; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == "hide") el.hide(); - $.effects.restore(el, props); - if (mode == "show" && $.browser.msie) this.style.removeAttribute('filter'); - if(o.callback) o.callback.apply(this, arguments); - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Pulsate 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Pulsate - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.pulsate = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var times = o.options.times || 5; // Default # of times - var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2; - - // Adjust - if (mode == 'hide') times--; - if (el.is(':hidden')) { // Show fadeIn - el.css('opacity', 0); - el.show(); // Show - el.animate({opacity: 1}, duration, o.options.easing); - times = times-2; - } - - // Animate - for (var i = 0; i < times; i++) { // Pulsate - el.animate({opacity: 0}, duration, o.options.easing).animate({opacity: 1}, duration, o.options.easing); - }; - if (mode == 'hide') { // Last Pulse - el.animate({opacity: 0}, duration, o.options.easing, function(){ - el.hide(); // Hide - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - } else { - el.animate({opacity: 0}, duration, o.options.easing).animate({opacity: 1}, duration, o.options.easing, function(){ - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - }; - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Scale 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Scale - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.puff = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var options = $.extend(true, {}, o.options); - var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode - var percent = parseInt(o.options.percent,10) || 150; // Set default puff percent - options.fade = true; // It's not a puff if it doesn't fade! :) - var original = {height: el.height(), width: el.width()}; // Save original - - // Adjust - var factor = percent / 100; - el.from = (mode == 'hide') ? original : {height: original.height * factor, width: original.width * factor}; - - // Animation - options.from = el.from; - options.percent = (mode == 'hide') ? percent : 100; - options.mode = mode; - - // Animate - el.effect('scale', options, o.duration, o.callback); - el.dequeue(); - }); - -}; - -$.effects.scale = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this); - - // Set options - var options = $.extend(true, {}, o.options); - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var percent = parseInt(o.options.percent,10) || (parseInt(o.options.percent,10) == 0 ? 0 : (mode == 'hide' ? 0 : 100)); // Set default scaling percent - var direction = o.options.direction || 'both'; // Set default axis - var origin = o.options.origin; // The origin of the scaling - if (mode != 'effect') { // Set default origin and restore for show/hide - options.origin = origin || ['middle','center']; - options.restore = true; - } - var original = {height: el.height(), width: el.width()}; // Save original - el.from = o.options.from || (mode == 'show' ? {height: 0, width: 0} : original); // Default from state - - // Adjust - var factor = { // Set scaling factor - y: direction != 'horizontal' ? (percent / 100) : 1, - x: direction != 'vertical' ? (percent / 100) : 1 - }; - el.to = {height: original.height * factor.y, width: original.width * factor.x}; // Set to state - - if (o.options.fade) { // Fade option to support puff - if (mode == 'show') {el.from.opacity = 0; el.to.opacity = 1;}; - if (mode == 'hide') {el.from.opacity = 1; el.to.opacity = 0;}; - }; - - // Animation - options.from = el.from; options.to = el.to; options.mode = mode; - - // Animate - el.effect('size', options, o.duration, o.callback); - el.dequeue(); - }); - -}; - -$.effects.size = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left','width','height','overflow','opacity']; - var props1 = ['position','top','left','overflow','opacity']; // Always restore - var props2 = ['width','height','overflow']; // Copy for children - var cProps = ['fontSize']; - var vProps = ['borderTopWidth', 'borderBottomWidth', 'paddingTop', 'paddingBottom']; - var hProps = ['borderLeftWidth', 'borderRightWidth', 'paddingLeft', 'paddingRight']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var restore = o.options.restore || false; // Default restore - var scale = o.options.scale || 'both'; // Default scale mode - var origin = o.options.origin; // The origin of the sizing - var original = {height: el.height(), width: el.width()}; // Save original - el.from = o.options.from || original; // Default from state - el.to = o.options.to || original; // Default to state - // Adjust - if (origin) { // Calculate baseline shifts - var baseline = $.effects.getBaseline(origin, original); - el.from.top = (original.height - el.from.height) * baseline.y; - el.from.left = (original.width - el.from.width) * baseline.x; - el.to.top = (original.height - el.to.height) * baseline.y; - el.to.left = (original.width - el.to.width) * baseline.x; - }; - var factor = { // Set scaling factor - from: {y: el.from.height / original.height, x: el.from.width / original.width}, - to: {y: el.to.height / original.height, x: el.to.width / original.width} - }; - if (scale == 'box' || scale == 'both') { // Scale the css box - if (factor.from.y != factor.to.y) { // Vertical props scaling - props = props.concat(vProps); - el.from = $.effects.setTransition(el, vProps, factor.from.y, el.from); - el.to = $.effects.setTransition(el, vProps, factor.to.y, el.to); - }; - if (factor.from.x != factor.to.x) { // Horizontal props scaling - props = props.concat(hProps); - el.from = $.effects.setTransition(el, hProps, factor.from.x, el.from); - el.to = $.effects.setTransition(el, hProps, factor.to.x, el.to); - }; - }; - if (scale == 'content' || scale == 'both') { // Scale the content - if (factor.from.y != factor.to.y) { // Vertical props scaling - props = props.concat(cProps); - el.from = $.effects.setTransition(el, cProps, factor.from.y, el.from); - el.to = $.effects.setTransition(el, cProps, factor.to.y, el.to); - }; - }; - $.effects.save(el, restore ? props : props1); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - el.css('overflow','hidden').css(el.from); // Shift - - // Animate - if (scale == 'content' || scale == 'both') { // Scale the children - vProps = vProps.concat(['marginTop','marginBottom']).concat(cProps); // Add margins/font-size - hProps = hProps.concat(['marginLeft','marginRight']); // Add margins - props2 = props.concat(vProps).concat(hProps); // Concat - el.find("*[width]").each(function(){ - child = $(this); - if (restore) $.effects.save(child, props2); - var c_original = {height: child.height(), width: child.width()}; // Save original - child.from = {height: c_original.height * factor.from.y, width: c_original.width * factor.from.x}; - child.to = {height: c_original.height * factor.to.y, width: c_original.width * factor.to.x}; - if (factor.from.y != factor.to.y) { // Vertical props scaling - child.from = $.effects.setTransition(child, vProps, factor.from.y, child.from); - child.to = $.effects.setTransition(child, vProps, factor.to.y, child.to); - }; - if (factor.from.x != factor.to.x) { // Horizontal props scaling - child.from = $.effects.setTransition(child, hProps, factor.from.x, child.from); - child.to = $.effects.setTransition(child, hProps, factor.to.x, child.to); - }; - child.css(child.from); // Shift children - child.animate(child.to, o.duration, o.options.easing, function(){ - if (restore) $.effects.restore(child, props2); // Restore children - }); // Animate children - }); - }; - - // Animate - el.animate(el.to, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, restore ? props : props1); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Shake 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Shake - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.shake = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode - var direction = o.options.direction || 'left'; // Default direction - var distance = o.options.distance || 20; // Default distance - var times = o.options.times || 3; // Default # of times - var speed = o.duration || o.options.duration || 140; // Default speed per shake - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - - // Animation - var animation = {}, animation1 = {}, animation2 = {}; - animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance; - animation1[ref] = (motion == 'pos' ? '+=' : '-=') + distance * 2; - animation2[ref] = (motion == 'pos' ? '-=' : '+=') + distance * 2; - - // Animate - el.animate(animation, speed, o.options.easing); - for (var i = 1; i < times; i++) { // Shakes - el.animate(animation1, speed, o.options.easing).animate(animation2, speed, o.options.easing); - }; - el.animate(animation1, speed, o.options.easing). - animate(animation, speed / 2, o.options.easing, function(){ // Last shake - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - }); - el.queue('fx', function() { el.dequeue(); }); - el.dequeue(); - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Slide 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Slide - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.slide = function(o) { - - return this.queue(function() { - - // Create element - var el = $(this), props = ['position','top','left']; - - // Set options - var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode - var direction = o.options.direction || 'left'; // Default Direction - - // Adjust - $.effects.save(el, props); el.show(); // Save & Show - $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper - var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left'; - var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg'; - var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true})); - if (mode == 'show') el.css(ref, motion == 'pos' ? -distance : distance); // Shift - - // Animation - var animation = {}; - animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance; - - // Animate - el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() { - if(mode == 'hide') el.hide(); // Hide - $.effects.restore(el, props); $.effects.removeWrapper(el); // Restore - if(o.callback) o.callback.apply(this, arguments); // Callback - el.dequeue(); - }}); - - }); - -}; - -})(jQuery); -/* - * jQuery UI Effects Transfer 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Transfer - * - * Depends: - * effects.core.js - */ -(function($) { - -$.effects.transfer = function(o) { - return this.queue(function() { - var elem = $(this), - target = $(o.options.to), - endPosition = target.offset(), - animation = { - top: endPosition.top, - left: endPosition.left, - height: target.innerHeight(), - width: target.innerWidth() - }, - startPosition = elem.offset(), - transfer = $('
    ') - .appendTo(document.body) - .addClass(o.options.className) - .css({ - top: startPosition.top, - left: startPosition.left, - height: elem.innerHeight(), - width: elem.innerWidth(), - position: 'absolute' - }) - .animate(animation, o.duration, o.options.easing, function() { - transfer.remove(); - (o.callback && o.callback.apply(elem[0], arguments)); - elem.dequeue(); - }); - }); -}; - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js deleted file mode 100644 index 9831410..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/jquery-ui-1.7.custom.min.js +++ /dev/null @@ -1,273 +0,0 @@ -/* - * jQuery UI 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=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)}else{j=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"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery);;/* - * jQuery UI Draggable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.draggable",a.extend({},a.ui.mouse,{_init:function(){if(this.options.helper=="original"&&!(/^(?:r|a|f)/).test(this.element.css("position"))){this.element[0].style.position="relative"}(this.options.addClasses&&this.element.addClass("ui-draggable"));(this.options.disabled&&this.element.addClass("ui-draggable-disabled"));this._mouseInit()},destroy:function(){if(!this.element.data("draggable")){return}this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy()},_mouseCapture:function(b){var c=this.options;if(this.helper||c.disabled||a(b.target).is(".ui-resizable-handle")){return false}this.handle=this._getHandle(b);if(!this.handle){return false}return true},_mouseStart:function(b){var c=this.options;this.helper=this._createHelper(b);this._cacheHelperProportions();if(a.ui.ddmanager){a.ui.ddmanager.current=this}this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(b);this.originalPageX=b.pageX;this.originalPageY=b.pageY;if(c.cursorAt){this._adjustOffsetFromHelper(c.cursorAt)}if(c.containment){this._setContainment()}this._trigger("start",b);this._cacheHelperProportions();if(a.ui.ddmanager&&!c.dropBehaviour){a.ui.ddmanager.prepareOffsets(this,b)}this.helper.addClass("ui-draggable-dragging");this._mouseDrag(b,true);return true},_mouseDrag:function(b,d){this.position=this._generatePosition(b);this.positionAbs=this._convertPositionTo("absolute");if(!d){var c=this._uiHash();this._trigger("drag",b,c);this.position=c.position}if(!this.options.axis||this.options.axis!="y"){this.helper[0].style.left=this.position.left+"px"}if(!this.options.axis||this.options.axis!="x"){this.helper[0].style.top=this.position.top+"px"}if(a.ui.ddmanager){a.ui.ddmanager.drag(this,b)}return false},_mouseStop:function(c){var d=false;if(a.ui.ddmanager&&!this.options.dropBehaviour){d=a.ui.ddmanager.drop(this,c)}if(this.dropped){d=this.dropped;this.dropped=false}if((this.options.revert=="invalid"&&!d)||(this.options.revert=="valid"&&d)||this.options.revert===true||(a.isFunction(this.options.revert)&&this.options.revert.call(this.element,d))){var b=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){b._trigger("stop",c);b._clear()})}else{this._trigger("stop",c);this._clear()}return false},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?true:false;a(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==b.target){c=true}});return c},_createHelper:function(c){var d=this.options;var b=a.isFunction(d.helper)?a(d.helper.apply(this.element[0],[c])):(d.helper=="clone"?this.element.clone():this.element);if(!b.parents("body").length){b.appendTo((d.appendTo=="parent"?this.element[0].parentNode:d.appendTo))}if(b[0]!=this.element[0]&&!(/(fixed|absolute)/).test(b.css("position"))){b.css("position","absolute")}return b},_adjustOffsetFromHelper:function(b){if(b.left!=undefined){this.offset.click.left=b.left+this.margins.left}if(b.right!=undefined){this.offset.click.left=this.helperProportions.width-b.right+this.margins.left}if(b.top!=undefined){this.offset.click.top=b.top+this.margins.top}if(b.bottom!=undefined){this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top}},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])){b.left+=this.scrollParent.scrollLeft();b.top+=this.scrollParent.scrollTop()}if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)){b={top:0,left:0}}return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var b=this.element.position();return{top:b.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:b.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else{return{top:0,left:0}}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e=this.options;if(e.containment=="parent"){e.containment=this.helper[0].parentNode}if(e.containment=="document"||e.containment=="window"){this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,a(e.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a(e.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]}if(!(/^(document|window|parent)$/).test(e.containment)&&e.containment.constructor!=Array){var c=a(e.containment)[0];if(!c){return}var d=a(e.containment).offset();var b=(a(c).css("overflow")!="hidden");this.containment=[d.left+(parseInt(a(c).css("borderLeftWidth"),10)||0)+(parseInt(a(c).css("paddingLeft"),10)||0)-this.margins.left,d.top+(parseInt(a(c).css("borderTopWidth"),10)||0)+(parseInt(a(c).css("paddingTop"),10)||0)-this.margins.top,d.left+(b?Math.max(c.scrollWidth,c.offsetWidth):c.offsetWidth)-(parseInt(a(c).css("borderLeftWidth"),10)||0)-(parseInt(a(c).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,d.top+(b?Math.max(c.scrollHeight,c.offsetHeight):c.offsetHeight)-(parseInt(a(c).css("borderTopWidth"),10)||0)-(parseInt(a(c).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}else{if(e.containment.constructor==Array){this.containment=e.containment}}},_convertPositionTo:function(f,h){if(!h){h=this.position}var c=f=="absolute"?1:-1;var e=this.options,b=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=(/(html|body)/i).test(b[0].tagName);return{top:(h.top+this.offset.relative.top*c+this.offset.parent.top*c-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():(g?0:b.scrollTop()))*c)),left:(h.left+this.offset.relative.left*c+this.offset.parent.left*c-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:b.scrollLeft())*c))}},_generatePosition:function(e){var h=this.options,b=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,i=(/(html|body)/i).test(b[0].tagName);if(this.cssPosition=="relative"&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){this.offset.relative=this._getRelativeOffset()}var d=e.pageX;var c=e.pageY;if(this.originalPosition){if(this.containment){if(e.pageX-this.offset.click.leftthis.containment[2]){d=this.containment[2]+this.offset.click.left}if(e.pageY-this.offset.click.top>this.containment[3]){c=this.containment[3]+this.offset.click.top}}if(h.grid){var g=this.originalPageY+Math.round((c-this.originalPageY)/h.grid[1])*h.grid[1];c=this.containment?(!(g-this.offset.click.topthis.containment[3])?g:(!(g-this.offset.click.topthis.containment[2])?f:(!(f-this.offset.click.left
    ').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css(a(this).offset()).appendTo("body")})},stop:function(b,c){a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});a.ui.plugin.add("draggable","opacity",{start:function(c,d){var b=a(d.helper),e=a(this).data("draggable").options;if(b.css("opacity")){e._opacity=b.css("opacity")}b.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("draggable").options;if(d._opacity){a(c.helper).css("opacity",d._opacity)}}});a.ui.plugin.add("draggable","scroll",{start:function(c,d){var b=a(this).data("draggable");if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){b.overflowOffset=b.scrollParent.offset()}},drag:function(d,e){var c=a(this).data("draggable"),f=c.options,b=false;if(c.scrollParent[0]!=document&&c.scrollParent[0].tagName!="HTML"){if(!f.axis||f.axis!="x"){if((c.overflowOffset.top+c.scrollParent[0].offsetHeight)-d.pageY=0;v--){var s=g.snapElements[v].left,n=s+g.snapElements[v].width,m=g.snapElements[v].top,A=m+g.snapElements[v].height;if(!((s-y=p&&n<=k)||(m>=p&&m<=k)||(nk))&&((e>=g&&e<=c)||(d>=g&&d<=c)||(ec));break;default:return false;break}};a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(e,g){var b=a.ui.ddmanager.droppables[e.options.scope];var f=g?g.type:null;var h=(e.currentItem||e.element).find(":data(droppable)").andSelf();droppablesLoop:for(var d=0;d').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=j.handles||(!c(".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 k=this.handles.split(",");this.handles={};for(var f=0;f');if(/sw|se|ne|nw/.test(h)){g.css({zIndex:++j.zIndex})}if("se"==h){g.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[h]=".ui-resizable-"+h;this.element.append(g)}}this._renderAxis=function(p){p=p||this.element;for(var m in this.handles){if(this.handles[m].constructor==String){this.handles[m]=c(this.handles[m],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var n=c(this.handles[m],this.element),o=0;o=/sw|ne|nw|se|n|s/.test(m)?n.outerHeight():n.outerWidth();var l=["padding",/ne|nw|n/.test(m)?"Top":/se|sw|s/.test(m)?"Bottom":/^e$/.test(m)?"Right":"Left"].join("");p.css(l,o);this._proportionallyResize()}if(!c(this.handles[m]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!e.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}e.axis=i&&i[1]?i[1]:"se"}});if(j.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){c(this).removeClass("ui-resizable-autohide");e._handles.show()},function(){if(!e.resizing){c(this).addClass("ui-resizable-autohide");e._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var d=function(f){c(f).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){d(this.element);var e=this.element;e.parent().append(this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")})).end().remove()}this.originalElement.css("resize",this.originalResizeStyle);d(this.originalElement)},_mouseCapture:function(e){var f=false;for(var d in this.handles){if(c(this.handles[d])[0]==e.target){f=true}}return this.options.disabled||!!f},_mouseStart:function(f){var i=this.options,e=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(d.is(".ui-draggable")||(/absolute/).test(d.css("position"))){d.css({position:"absolute",top:e.top,left:e.left})}if(c.browser.opera&&(/relative/).test(d.css("position"))){d.css({position:"relative",top:"auto",left:"auto"})}this._renderProxy();var j=b(this.helper.css("left")),g=b(this.helper.css("top"));if(i.containment){j+=c(i.containment).scrollLeft()||0;g+=c(i.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:j,top:g};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:j,top:g};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:f.pageX,top:f.pageY};this.aspectRatio=(typeof i.aspectRatio=="number")?i.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var h=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",h=="auto"?this.axis+"-resize":h);d.addClass("ui-resizable-resizing");this._propagate("start",f);return true},_mouseDrag:function(d){var g=this.helper,f=this.options,l={},p=this,i=this.originalMousePosition,m=this.axis;var q=(d.pageX-i.left)||0,n=(d.pageY-i.top)||0;var h=this._change[m];if(!h){return false}var k=h.apply(this,[d,q,n]),j=c.browser.msie&&c.browser.version<7,e=this.sizeDiff;if(this._aspectRatio||d.shiftKey){k=this._updateRatio(k,d)}k=this._respectSize(k,d);this._propagate("resize",d);g.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(k);this._trigger("resize",d,this.ui());return false},_mouseStop:function(g){this.resizing=false;var h=this.options,l=this;if(this._helper){var f=this._proportionallyResizeElements,d=f.length&&(/textarea/i).test(f[0].nodeName),e=d&&c.ui.hasScroll(f[0],"left")?0:l.sizeDiff.height,j=d?0:l.sizeDiff.width;var m={width:(l.size.width-j),height:(l.size.height-e)},i=(parseInt(l.element.css("left"),10)+(l.position.left-l.originalPosition.left))||null,k=(parseInt(l.element.css("top"),10)+(l.position.top-l.originalPosition.top))||null;if(!h.animate){this.element.css(c.extend(m,{top:k,left:i}))}l.helper.height(l.size.height);l.helper.width(l.size.width);if(this._helper&&!h.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",g);if(this._helper){this.helper.remove()}return false},_updateCache:function(d){var e=this.options;this.offset=this.helper.offset();if(a(d.left)){this.position.left=d.left}if(a(d.top)){this.position.top=d.top}if(a(d.height)){this.size.height=d.height}if(a(d.width)){this.size.width=d.width}},_updateRatio:function(g,f){var h=this.options,i=this.position,e=this.size,d=this.axis;if(g.height){g.width=(e.height*this.aspectRatio)}else{if(g.width){g.height=(e.width/this.aspectRatio)}}if(d=="sw"){g.left=i.left+(e.width-g.width);g.top=null}if(d=="nw"){g.top=i.top+(e.height-g.height);g.left=i.left+(e.width-g.width)}return g},_respectSize:function(k,f){var i=this.helper,h=this.options,q=this._aspectRatio||f.shiftKey,p=this.axis,s=a(k.width)&&h.maxWidth&&(h.maxWidthk.width),r=a(k.height)&&h.minHeight&&(h.minHeight>k.height);if(g){k.width=h.minWidth}if(r){k.height=h.minHeight}if(s){k.width=h.maxWidth}if(l){k.height=h.maxHeight}var e=this.originalPosition.left+this.originalSize.width,n=this.position.top+this.size.height;var j=/sw|nw|w/.test(p),d=/nw|ne|n/.test(p);if(g&&j){k.left=e-h.minWidth}if(s&&j){k.left=e-h.maxWidth}if(r&&d){k.top=n-h.minHeight}if(l&&d){k.top=n-h.maxHeight}var m=!k.width&&!k.height;if(m&&!k.left&&k.top){k.top=null}else{if(m&&!k.top&&k.left){k.left=null}}return k},_proportionallyResize:function(){var j=this.options;if(!this._proportionallyResizeElements.length){return}var f=this.helper||this.element;for(var e=0;e');var d=c.browser.msie&&c.browser.version<7,f=(d?1:0),g=(d?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+g,height:this.element.outerHeight()+g,position:"absolute",left:this.elementOffset.left-f+"px",top:this.elementOffset.top-f+"px",zIndex:++h.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(f,e,d){return{width:this.originalSize.width+e}},w:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{left:h.left+e,width:f.width-e}},n:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{top:h.top+d,height:f.height-d}},s:function(f,e,d){return{height:this.originalSize.height+d}},se:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},sw:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[f,e,d]))},ne:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},nw:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[f,e,d]))}},_propagate:function(e,d){c.ui.plugin.call(this,e,[d,this.ui()]);(e!="resize"&&this._trigger(e,d,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}}}));c.extend(c.ui.resizable,{version:"1.7",eventPrefix:"resize",defaults:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,cancel:":input,option",containment:false,delay:0,distance:1,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000}});c.ui.plugin.add("resizable","alsoResize",{start:function(e,f){var d=c(this).data("resizable"),g=d.options;_store=function(h){c(h).each(function(){c(this).data("resizable-alsoresize",{width:parseInt(c(this).width(),10),height:parseInt(c(this).height(),10),left:parseInt(c(this).css("left"),10),top:parseInt(c(this).css("top"),10)})})};if(typeof(g.alsoResize)=="object"&&!g.alsoResize.parentNode){if(g.alsoResize.length){g.alsoResize=g.alsoResize[0];_store(g.alsoResize)}else{c.each(g.alsoResize,function(h,i){_store(h)})}}else{_store(g.alsoResize)}},resize:function(f,h){var e=c(this).data("resizable"),i=e.options,g=e.originalSize,k=e.originalPosition;var j={height:(e.size.height-g.height)||0,width:(e.size.width-g.width)||0,top:(e.position.top-k.top)||0,left:(e.position.left-k.left)||0},d=function(l,m){c(l).each(function(){var p=c(this),q=c(this).data("resizable-alsoresize"),o={},n=m&&m.length?m:["width","height","top","left"];c.each(n||["width","height","top","left"],function(r,t){var s=(q[t]||0)+(j[t]||0);if(s&&s>=0){o[t]=s||null}});if(/relative/.test(p.css("position"))&&c.browser.opera){e._revertToRelativePosition=true;p.css({position:"absolute",top:"auto",left:"auto"})}p.css(o)})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.nodeType){c.each(i.alsoResize,function(l,m){d(l,m)})}else{d(i.alsoResize)}},stop:function(e,f){var d=c(this).data("resizable");if(d._revertToRelativePosition&&c.browser.opera){d._revertToRelativePosition=false;el.css({position:"relative"})}c(this).removeData("resizable-alsoresize-start")}});c.ui.plugin.add("resizable","animate",{stop:function(h,m){var n=c(this).data("resizable"),i=n.options;var g=n._proportionallyResizeElements,d=g.length&&(/textarea/i).test(g[0].nodeName),e=d&&c.ui.hasScroll(g[0],"left")?0:n.sizeDiff.height,k=d?0:n.sizeDiff.width;var f={width:(n.size.width-k),height:(n.size.height-e)},j=(parseInt(n.element.css("left"),10)+(n.position.left-n.originalPosition.left))||null,l=(parseInt(n.element.css("top"),10)+(n.position.top-n.originalPosition.top))||null;n.element.animate(c.extend(f,l&&j?{top:l,left:j}:{}),{duration:i.animateDuration,easing:i.animateEasing,step:function(){var o={width:parseInt(n.element.css("width"),10),height:parseInt(n.element.css("height"),10),top:parseInt(n.element.css("top"),10),left:parseInt(n.element.css("left"),10)};if(g&&g.length){c(g[0]).css({width:o.width,height:o.height})}n._updateCache(o);n._propagate("resize",h)}})}});c.ui.plugin.add("resizable","containment",{start:function(e,q){var s=c(this).data("resizable"),i=s.options,k=s.element;var f=i.containment,j=(f instanceof c)?f.get(0):(/parent/.test(f))?k.parent().get(0):f;if(!j){return}s.containerElement=c(j);if(/document/.test(f)||f==document){s.containerOffset={left:0,top:0};s.containerPosition={left:0,top:0};s.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var m=c(j),h=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){h[p]=b(m.css("padding"+o))});s.containerOffset=m.offset();s.containerPosition=m.position();s.containerSize={height:(m.innerHeight()-h[3]),width:(m.innerWidth()-h[1])};var n=s.containerOffset,d=s.containerSize.height,l=s.containerSize.width,g=(c.ui.hasScroll(j,"left")?j.scrollWidth:l),r=(c.ui.hasScroll(j)?j.scrollHeight:d);s.parentData={element:j,left:n.left,top:n.top,width:g,height:r}}},resize:function(f,p){var s=c(this).data("resizable"),h=s.options,e=s.containerSize,n=s.containerOffset,l=s.size,m=s.position,q=h._aspectRatio||f.shiftKey,d={top:0,left:0},g=s.containerElement;if(g[0]!=document&&(/static/).test(g.css("position"))){d=n}if(m.left<(s._helper?n.left:0)){s.size.width=s.size.width+(s._helper?(s.position.left-n.left):(s.position.left-d.left));if(q){s.size.height=s.size.width/h.aspectRatio}s.position.left=h.helper?n.left:0}if(m.top<(s._helper?n.top:0)){s.size.height=s.size.height+(s._helper?(s.position.top-n.top):s.position.top);if(q){s.size.width=s.size.height*h.aspectRatio}s.position.top=s._helper?n.top:0}s.offset.left=s.parentData.left+s.position.left;s.offset.top=s.parentData.top+s.position.top;var k=Math.abs((s._helper?s.offset.left-d.left:(s.offset.left-d.left))+s.sizeDiff.width),r=Math.abs((s._helper?s.offset.top-d.top:(s.offset.top-n.top))+s.sizeDiff.height);var j=s.containerElement.get(0)==s.element.parent().get(0),i=/relative|absolute/.test(s.containerElement.css("position"));if(j&&i){k-=s.parentData.left}if(k+s.size.width>=s.parentData.width){s.size.width=s.parentData.width-k;if(q){s.size.height=s.size.width/h.aspectRatio}}if(r+s.size.height>=s.parentData.height){s.size.height=s.parentData.height-r;if(q){s.size.width=s.size.height*h.aspectRatio}}},stop:function(e,m){var p=c(this).data("resizable"),f=p.options,k=p.position,l=p.containerOffset,d=p.containerPosition,g=p.containerElement;var i=c(p.helper),q=i.offset(),n=i.outerWidth()-p.sizeDiff.width,j=i.outerHeight()-p.sizeDiff.height;if(p._helper&&!f.animate&&(/relative/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}if(p._helper&&!f.animate&&(/static/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}}});c.ui.plugin.add("resizable","ghost",{start:function(f,g){var d=c(this).data("resizable"),h=d.options,e=d.size;d.ghost=d.originalElement.clone();d.ghost.css({opacity:0.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof h.ghost=="string"?h.ghost:"");d.ghost.appendTo(d.helper)},resize:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost){d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})}},stop:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost&&d.helper){d.helper.get(0).removeChild(d.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(d,l){var n=c(this).data("resizable"),g=n.options,j=n.size,h=n.originalSize,i=n.originalPosition,m=n.axis,k=g._aspectRatio||d.shiftKey;g.grid=typeof g.grid=="number"?[g.grid,g.grid]:g.grid;var f=Math.round((j.width-h.width)/(g.grid[0]||1))*(g.grid[0]||1),e=Math.round((j.height-h.height)/(g.grid[1]||1))*(g.grid[1]||1);if(/^(se|s|e)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e}else{if(/^(ne)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e}else{if(/^(sw)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.left=i.left-f}else{n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e;n.position.left=i.left-f}}}}});var b=function(d){return parseInt(d,10)||0};var a=function(d){return !isNaN(parseInt(d,10))}})(jQuery);;/* - * jQuery UI Selectable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Selectables - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.selectable",a.extend({},a.ui.mouse,{_init:function(){var b=this;this.element.addClass("ui-selectable");this.dragged=false;var c;this.refresh=function(){c=a(b.options.filter,b.element[0]);c.each(function(){var d=a(this);var e=d.offset();a.data(this,"selectable-item",{element:this,$element:d,left:e.left,top:e.top,right:e.left+d.outerWidth(),bottom:e.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"),selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=c.addClass("ui-selectee");this._mouseInit();this.helper=a(document.createElement("div")).css({border:"1px dotted black"}).addClass("ui-selectable-helper")},destroy:function(){this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy()},_mouseStart:function(d){var b=this;this.opos=[d.pageX,d.pageY];if(this.options.disabled){return}var c=this.options;this.selectees=a(c.filter,this.element[0]);this._trigger("start",d);a("body").append(this.helper);this.helper.css({"z-index":100,position:"absolute",left:d.clientX,top:d.clientY,width:0,height:0});if(c.autoRefresh){this.refresh()}this.selectees.filter(".ui-selected").each(function(){var e=a.data(this,"selectable-item");e.startselected=true;if(!d.metaKey){e.$element.removeClass("ui-selected");e.selected=false;e.$element.addClass("ui-unselecting");e.unselecting=true;b._trigger("unselecting",d,{unselecting:e.element})}});a(d.target).parents().andSelf().each(function(){var e=a.data(this,"selectable-item");if(e){e.$element.removeClass("ui-unselecting").addClass("ui-selecting");e.unselecting=false;e.selecting=true;e.selected=true;b._trigger("selecting",d,{selecting:e.element});return false}})},_mouseDrag:function(i){var c=this;this.dragged=true;if(this.options.disabled){return}var e=this.options;var d=this.opos[0],h=this.opos[1],b=i.pageX,g=i.pageY;if(d>b){var f=b;b=d;d=f}if(h>g){var f=g;g=h;h=f}this.helper.css({left:d,top:h,width:b-d,height:g-h});this.selectees.each(function(){var j=a.data(this,"selectable-item");if(!j||j.element==c.element[0]){return}var k=false;if(e.tolerance=="touch"){k=(!(j.left>b||j.rightg||j.bottomd&&j.righth&&j.bottom=0;b--){this.items[b].item.removeData("sortable-item")}},_mouseCapture:function(e,f){if(this.reverting){return false}if(this.options.disabled||this.options.type=="static"){return false}this._refreshItems(e);var d=null,c=this,b=a(e.target).parents().each(function(){if(a.data(this,"sortable-item")==c){d=a(this);return false}});if(a.data(e.target,"sortable-item")==c){d=a(e.target)}if(!d){return false}if(this.options.handle&&!f){var g=false;a(this.options.handle,d).find("*").andSelf().each(function(){if(this==e.target){g=true}});if(!g){return false}}this.currentItem=d;this._removeCurrentsFromItems();return true},_mouseStart:function(e,f,b){var g=this.options,c=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(e);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");a.extend(this.offset,{click:{left:e.pageX-this.offset.left,top:e.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(e);this.originalPageX=e.pageX;this.originalPageY=e.pageY;if(g.cursorAt){this._adjustOffsetFromHelper(g.cursorAt)}this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!=this.currentItem[0]){this.currentItem.hide()}this._createPlaceholder();if(g.containment){this._setContainment()}if(g.cursor){if(a("body").css("cursor")){this._storedCursor=a("body").css("cursor")}a("body").css("cursor",g.cursor)}if(g.opacity){if(this.helper.css("opacity")){this._storedOpacity=this.helper.css("opacity")}this.helper.css("opacity",g.opacity)}if(g.zIndex){if(this.helper.css("zIndex")){this._storedZIndex=this.helper.css("zIndex")}this.helper.css("zIndex",g.zIndex)}if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){this.overflowOffset=this.scrollParent.offset()}this._trigger("start",e,this._uiHash());if(!this._preserveHelperProportions){this._cacheHelperProportions()}if(!b){for(var d=this.containers.length-1;d>=0;d--){this.containers[d]._trigger("activate",e,c._uiHash(this))}}if(a.ui.ddmanager){a.ui.ddmanager.current=this}if(a.ui.ddmanager&&!g.dropBehaviour){a.ui.ddmanager.prepareOffsets(this,e)}this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(e);return true},_mouseDrag:function(f){this.position=this._generatePosition(f);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs}if(this.options.scroll){var g=this.options,b=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-f.pageY=0;d--){var e=this.items[d],c=e.item[0],h=this._intersectsWithPointer(e);if(!h){continue}if(c!=this.currentItem[0]&&this.placeholder[h==1?"next":"prev"]()[0]!=c&&!a.ui.contains(this.placeholder[0],c)&&(this.options.type=="semi-dynamic"?!a.ui.contains(this.element[0],c):true)){this.direction=h==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(e)){this._rearrange(f,e)}else{break}this._trigger("change",f,this._uiHash());break}}this._contactContainers(f);if(a.ui.ddmanager){a.ui.ddmanager.drag(this,f)}this._trigger("sort",f,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(c,d){if(!c){return}if(a.ui.ddmanager&&!this.options.dropBehaviour){a.ui.ddmanager.drop(this,c)}if(this.options.revert){var b=this;var e=b.placeholder.offset();b.reverting=true;a(this.helper).animate({left:e.left-this.offset.parent.left-b.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:e.top-this.offset.parent.top-b.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){b._clear(c)})}else{this._clear(c,d)}return false},cancel:function(){var b=this;if(this.dragging){this._mouseUp();if(this.options.helper=="original"){this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else{this.currentItem.show()}for(var c=this.containers.length-1;c>=0;c--){this.containers[c]._trigger("deactivate",null,b._uiHash(this));if(this.containers[c].containerCache.over){this.containers[c]._trigger("out",null,b._uiHash(this));this.containers[c].containerCache.over=0}}}if(this.placeholder[0].parentNode){this.placeholder[0].parentNode.removeChild(this.placeholder[0])}if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode){this.helper.remove()}a.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){a(this.domPosition.prev).after(this.currentItem)}else{a(this.domPosition.parent).prepend(this.currentItem)}return true},serialize:function(d){var b=this._getItemsAsjQuery(d&&d.connected);var c=[];d=d||{};a(b).each(function(){var e=(a(d.item||this).attr(d.attribute||"id")||"").match(d.expression||(/(.+)[-=_](.+)/));if(e){c.push((d.key||e[1]+"[]")+"="+(d.key&&d.expression?e[1]:e[2]))}});return c.join("&")},toArray:function(d){var b=this._getItemsAsjQuery(d&&d.connected);var c=[];d=d||{};b.each(function(){c.push(a(d.item||this).attr(d.attribute||"id")||"")});return c},_intersectsWith:function(m){var e=this.positionAbs.left,d=e+this.helperProportions.width,k=this.positionAbs.top,j=k+this.helperProportions.height;var f=m.left,c=f+m.width,n=m.top,i=n+m.height;var o=this.offset.click.top,h=this.offset.click.left;var g=(k+o)>n&&(k+o)f&&(e+h)m[this.floating?"width":"height"])){return g}else{return(f0?"down":"up")},_getDragHorizontalDirection:function(){var b=this.positionAbs.left-this.lastPositionAbs.left;return b!=0&&(b>0?"right":"left")},refresh:function(b){this._refreshItems(b);this.refreshPositions()},_connectWith:function(){var b=this.options;return b.connectWith.constructor==String?[b.connectWith]:b.connectWith},_getItemsAsjQuery:function(b){var l=this;var g=[];var e=[];var h=this._connectWith();if(h&&b){for(var d=h.length-1;d>=0;d--){var k=a(h[d]);for(var c=k.length-1;c>=0;c--){var f=a.data(k[c],"sortable");if(f&&f!=this&&!f.options.disabled){e.push([a.isFunction(f.options.items)?f.options.items.call(f.element):a(f.options.items,f.element).not(".ui-sortable-helper"),f])}}}}e.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper"),this]);for(var d=e.length-1;d>=0;d--){e[d][0].each(function(){g.push(this)})}return a(g)},_removeCurrentsFromItems:function(){var d=this.currentItem.find(":data(sortable-item)");for(var c=0;c=0;e--){var m=a(l[e]);for(var d=m.length-1;d>=0;d--){var g=a.data(m[d],"sortable");if(g&&g!=this&&!g.options.disabled){f.push([a.isFunction(g.options.items)?g.options.items.call(g.element[0],b,{item:this.currentItem}):a(g.options.items,g.element),g]);this.containers.push(g)}}}}for(var e=f.length-1;e>=0;e--){var k=f[e][1];var c=f[e][0];for(var d=0,n=c.length;d=0;d--){var e=this.items[d];if(e.instance!=this.currentContainer&&this.currentContainer&&e.item[0]!=this.currentItem[0]){continue}var c=this.options.toleranceElement?a(this.options.toleranceElement,e.item):e.item;if(!b){e.width=c.outerWidth();e.height=c.outerHeight()}var f=c.offset();e.left=f.left;e.top=f.top}if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this)}else{for(var d=this.containers.length-1;d>=0;d--){var f=this.containers[d].element.offset();this.containers[d].containerCache.left=f.left;this.containers[d].containerCache.top=f.top;this.containers[d].containerCache.width=this.containers[d].element.outerWidth();this.containers[d].containerCache.height=this.containers[d].element.outerHeight()}}},_createPlaceholder:function(d){var b=d||this,e=b.options;if(!e.placeholder||e.placeholder.constructor==String){var c=e.placeholder;e.placeholder={element:function(){var f=a(document.createElement(b.currentItem[0].nodeName)).addClass(c||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!c){f.style.visibility="hidden"}return f},update:function(f,g){if(c&&!e.forcePlaceholderSize){return}if(!g.height()){g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10))}if(!g.width()){g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||0,10))}}}}b.placeholder=a(e.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);e.placeholder.update(b,b.placeholder)},_contactContainers:function(d){for(var c=this.containers.length-1;c>=0;c--){if(this._intersectsWith(this.containers[c].containerCache)){if(!this.containers[c].containerCache.over){if(this.currentContainer!=this.containers[c]){var h=10000;var g=null;var e=this.positionAbs[this.containers[c].floating?"left":"top"];for(var b=this.items.length-1;b>=0;b--){if(!a.ui.contains(this.containers[c].element[0],this.items[b].item[0])){continue}var f=this.items[b][this.containers[c].floating?"left":"top"];if(Math.abs(f-e)this.containment[2]){d=this.containment[2]+this.offset.click.left}if(e.pageY-this.offset.click.top>this.containment[3]){c=this.containment[3]+this.offset.click.top}}if(h.grid){var g=this.originalPageY+Math.round((c-this.originalPageY)/h.grid[1])*h.grid[1];c=this.containment?(!(g-this.offset.click.topthis.containment[3])?g:(!(g-this.offset.click.topthis.containment[2])?f:(!(f-this.offset.click.left=0;c--){if(a.ui.contains(this.containers[c].element[0],this.currentItem[0])&&!e){f.push((function(g){return function(h){g._trigger("receive",h,this._uiHash(this))}}).call(this,this.containers[c]));f.push((function(g){return function(h){g._trigger("update",h,this._uiHash(this))}}).call(this,this.containers[c]))}}}for(var c=this.containers.length-1;c>=0;c--){if(!e){f.push((function(g){return function(h){g._trigger("deactivate",h,this._uiHash(this))}}).call(this,this.containers[c]))}if(this.containers[c].containerCache.over){f.push((function(g){return function(h){g._trigger("out",h,this._uiHash(this))}}).call(this,this.containers[c]));this.containers[c].containerCache.over=0}}if(this._storedCursor){a("body").css("cursor",this._storedCursor)}if(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(!e){this._trigger("beforeStop",d,this._uiHash());for(var c=0;c *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1000}})})(jQuery);;/* - * jQuery UI Accordion 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Accordion - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.accordion",{_init:function(){var d=this.options,b=this;this.running=0;if(d.collapsible==a.ui.accordion.defaults.collapsible&&d.alwaysOpen!=a.ui.accordion.defaults.alwaysOpen){d.collapsible=!d.alwaysOpen}if(d.navigation){var c=this.element.find("a").filter(d.navigationFilter);if(c.length){if(c.filter(d.header).length){this.active=c}else{this.active=c.parent().parent().prev();c.addClass("ui-accordion-content-active")}}}this.element.addClass("ui-accordion ui-widget ui-helper-reset");if(this.element[0].nodeName=="UL"){this.element.children("li").addClass("ui-accordion-li-fix")}this.headers=this.element.find(d.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){a(this).removeClass("ui-state-focus")});this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");this.active=this._findActive(this.active||d.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");this.active.next().addClass("ui-accordion-content-active");a("").addClass("ui-icon "+d.icons.header).prependTo(this.headers);this.active.find(".ui-icon").toggleClass(d.icons.header).toggleClass(d.icons.headerSelected);if(a.browser.msie){this.element.find("a").css("zoom","1")}this.resize();this.element.attr("role","tablist");this.headers.attr("role","tab").bind("keydown",function(e){return b._keydown(e)}).next().attr("role","tabpanel");this.headers.not(this.active||"").attr("aria-expanded","false").attr("tabIndex","-1").next().hide();if(!this.active.length){this.headers.eq(0).attr("tabIndex","0")}else{this.active.attr("aria-expanded","true").attr("tabIndex","0")}if(!a.browser.safari){this.headers.find("a").attr("tabIndex","-1")}if(d.event){this.headers.bind((d.event)+".accordion",function(e){return b._clickHandler.call(b,e,this)})}},destroy:function(){var c=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role").unbind(".accordion").removeData("accordion");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex");this.headers.find("a").removeAttr("tabindex");this.headers.children(".ui-icon").remove();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");if(c.autoHeight||c.fillHeight){b.css("height","")}},_setData:function(b,c){if(b=="alwaysOpen"){b="collapsible";c=!c}a.widget.prototype._setData.apply(this,arguments)},_keydown:function(e){var g=this.options,f=a.ui.keyCode;if(g.disabled||e.altKey||e.ctrlKey){return}var d=this.headers.length;var b=this.headers.index(e.target);var c=false;switch(e.keyCode){case f.RIGHT:case f.DOWN:c=this.headers[(b+1)%d];break;case f.LEFT:case f.UP:c=this.headers[(b-1+d)%d];break;case f.SPACE:case f.ENTER:return this._clickHandler({target:e.target},e.target)}if(c){a(e.target).attr("tabIndex","-1");a(c).attr("tabIndex","0");c.focus();return false}return true},resize:function(){var e=this.options,d;if(e.fillSpace){if(a.browser.msie){var b=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}d=this.element.parent().height();if(a.browser.msie){this.element.parent().css("overflow",b)}this.headers.each(function(){d-=a(this).outerHeight()});var c=0;this.headers.next().each(function(){c=Math.max(c,a(this).innerHeight()-a(this).height())}).height(Math.max(0,d-c)).css("overflow","auto")}else{if(e.autoHeight){d=0;this.headers.next().each(function(){d=Math.max(d,a(this).outerHeight())}).height(d)}}},activate:function(b){var c=this._findActive(b)[0];this._clickHandler({target:c},c)},_findActive:function(b){return b?typeof b=="number"?this.headers.filter(":eq("+b+")"):this.headers.not(this.headers.not(b)):b===false?a([]):this.headers.filter(":eq(0)")},_clickHandler:function(b,f){var d=this.options;if(d.disabled){return false}if(!b.target&&d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var h=this.active.next(),e={options:d,newHeader:a([]),oldHeader:d.active,newContent:a([]),oldContent:h},c=(this.active=a([]));this._toggle(c,h,e);return false}var g=a(b.currentTarget||f);var i=g[0]==this.active[0];if(this.running||(!d.collapsible&&i)){return false}this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");if(!i){g.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").find(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);g.next().addClass("ui-accordion-content-active")}var c=g.next(),h=this.active.next(),e={options:d,newHeader:i&&d.collapsible?a([]):g,oldHeader:this.active,newContent:i&&d.collapsible?a([]):c.find("> *"),oldContent:h.find("> *")},j=this.headers.index(this.active[0])>this.headers.index(g[0]);this.active=i?a([]):g;this._toggle(c,h,e,i,j);return false},_toggle:function(b,i,g,j,k){var d=this.options,m=this;this.toShow=b;this.toHide=i;this.data=g;var c=function(){if(!m){return}return m._completed.apply(m,arguments)};this._trigger("changestart",null,this.data);this.running=i.size()===0?b.size():i.size();if(d.animated){var f={};if(d.collapsible&&j){f={toShow:a([]),toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}else{f={toShow:b,toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}if(!d.proxied){d.proxied=d.animated}if(!d.proxiedDuration){d.proxiedDuration=d.duration}d.animated=a.isFunction(d.proxied)?d.proxied(f):d.proxied;d.duration=a.isFunction(d.proxiedDuration)?d.proxiedDuration(f):d.proxiedDuration;var l=a.ui.accordion.animations,e=d.duration,h=d.animated;if(!l[h]){l[h]=function(n){this.slide(n,{easing:h,duration:e||700})}}l[h](f)}else{if(d.collapsible&&j){b.toggle()}else{i.hide();b.show()}c(true)}i.prev().attr("aria-expanded","false").attr("tabIndex","-1").blur();b.prev().attr("aria-expanded","true").attr("tabIndex","0").focus()},_completed:function(b){var c=this.options;this.running=b?0:--this.running;if(this.running){return}if(c.clearStyle){this.toShow.add(this.toHide).css({height:"",overflow:""})}this._trigger("change",null,this.data)}});a.extend(a.ui.accordion,{version:"1.7",defaults:{active:null,alwaysOpen:true,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> 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()}},animations:{slide:function(j,h){j=a.extend({easing:"swing",duration:300},j,h);if(!j.toHide.size()){j.toShow.animate({height:"show"},j);return}if(!j.toShow.size()){j.toHide.animate({height:"hide"},j);return}var c=j.toShow.css("overflow"),g,d={},f={},e=["height","paddingTop","paddingBottom"],b;var i=j.toShow;b=i[0].style.width;i.width(parseInt(i.parent().width(),10)-parseInt(i.css("paddingLeft"),10)-parseInt(i.css("paddingRight"),10)-parseInt(i.css("borderLeftWidth"),10)-parseInt(i.css("borderRightWidth"),10));a.each(e,function(k,m){f[m]="hide";var l=(""+a.css(j.toShow[0],m)).match(/^([\d+-.]+)(.*)$/);d[m]={value:l[1],unit:l[2]||"px"}});j.toShow.css({height:0,overflow:"hidden"}).show();j.toHide.filter(":hidden").each(j.complete).end().filter(":visible").animate(f,{step:function(k,l){if(l.prop=="height"){g=(l.now-l.start)/(l.end-l.start)}j.toShow[0].style[l.prop]=(g*d[l.prop].value)+d[l.prop].unit},duration:j.duration,easing:j.easing,complete:function(){if(!j.autoHeight){j.toShow.css("height","")}j.toShow.css("width",b);j.toShow.css({overflow:c});j.complete()}})},bounceslide:function(b){this.slide(b,{easing:b.down?"easeOutBounce":"swing",duration:b.down?1000:200})},easeslide:function(b){this.slide(b,{easing:"easeinout",duration:700})}}})})(jQuery);;/* - * jQuery UI Dialog 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Dialog - * - * Depends: - * ui.core.js - * ui.draggable.js - * ui.resizable.js - */ (function(c){var b={dragStart:"start.draggable",drag:"drag.draggable",dragStop:"stop.draggable",maxHeight:"maxHeight.resizable",minHeight:"minHeight.resizable",maxWidth:"maxWidth.resizable",minWidth:"minWidth.resizable",resizeStart:"start.resizable",resize:"drag.resizable",resizeStop:"stop.resizable"},a="ui-dialog ui-widget ui-widget-content ui-corner-all ";c.widget("ui.dialog",{_init:function(){this.originalTitle=this.element.attr("title");var l=this,m=this.options,j=m.title||this.originalTitle||" ",e=c.ui.dialog.getTitleId(this.element),k=(this.uiDialog=c("
    ")).appendTo(document.body).hide().addClass(a+m.dialogClass).css({position:"absolute",overflow:"hidden",zIndex:m.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(n){(m.closeOnEscape&&n.keyCode&&n.keyCode==c.ui.keyCode.ESCAPE&&l.close(n))}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(n){l.moveToTop(false,n)}),g=this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(k),f=(this.uiDialogTitlebar=c("
    ")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(k),i=c('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){i.addClass("ui-state-hover")},function(){i.removeClass("ui-state-hover")}).focus(function(){i.addClass("ui-state-focus")}).blur(function(){i.removeClass("ui-state-focus")}).mousedown(function(n){n.stopPropagation()}).click(function(n){l.close(n);return false}).appendTo(f),h=(this.uiDialogTitlebarCloseText=c("")).addClass("ui-icon ui-icon-closethick").text(m.closeText).appendTo(i),d=c("").addClass("ui-dialog-title").attr("id",e).html(j).prependTo(f);f.find("*").add(f).disableSelection();(m.draggable&&c.fn.draggable&&this._makeDraggable());(m.resizable&&c.fn.resizable&&this._makeResizable());this._createButtons(m.buttons);this._isOpen=false;(m.bgiframe&&c.fn.bgiframe&&k.bgiframe());(m.autoOpen&&this.open())},destroy:function(){(this.overlay&&this.overlay.destroy());this.uiDialog.hide();this.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");this.uiDialog.remove();(this.originalTitle&&this.element.attr("title",this.originalTitle))},close:function(e){var d=this;if(false===d._trigger("beforeclose",e)){return}(d.overlay&&d.overlay.destroy());d.uiDialog.unbind("keypress.ui-dialog");(d.options.hide?d.uiDialog.hide(d.options.hide,function(){d._trigger("close",e)}):d.uiDialog.hide()&&d._trigger("close",e));c.ui.dialog.overlay.resize();d._isOpen=false},isOpen:function(){return this._isOpen},moveToTop:function(f,e){if((this.options.modal&&!f)||(!this.options.stack&&!this.options.modal)){return this._trigger("focus",e)}if(this.options.zIndex>c.ui.dialog.maxZ){c.ui.dialog.maxZ=this.options.zIndex}(this.overlay&&this.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=++c.ui.dialog.maxZ));var d={scrollTop:this.element.attr("scrollTop"),scrollLeft:this.element.attr("scrollLeft")};this.uiDialog.css("z-index",++c.ui.dialog.maxZ);this.element.attr(d);this._trigger("focus",e)},open:function(){if(this._isOpen){return}var e=this.options,d=this.uiDialog;this.overlay=e.modal?new c.ui.dialog.overlay(this):null;(d.next().length&&d.appendTo("body"));this._size();this._position(e.position);d.show(e.show);this.moveToTop(true);(e.modal&&d.bind("keypress.ui-dialog",function(h){if(h.keyCode!=c.ui.keyCode.TAB){return}var g=c(":tabbable",this),i=g.filter(":first")[0],f=g.filter(":last")[0];if(h.target==f&&!h.shiftKey){setTimeout(function(){i.focus()},1)}else{if(h.target==i&&h.shiftKey){setTimeout(function(){f.focus()},1)}}}));c([]).add(d.find(".ui-dialog-content :tabbable:first")).add(d.find(".ui-dialog-buttonpane :tabbable:first")).add(d).filter(":first").focus();this._trigger("open");this._isOpen=true},_createButtons:function(g){var f=this,d=false,e=c("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix");this.uiDialog.find(".ui-dialog-buttonpane").remove();(typeof g=="object"&&g!==null&&c.each(g,function(){return !(d=true)}));if(d){c.each(g,function(h,i){c('').addClass("ui-state-default ui-corner-all").text(h).click(function(){i.apply(f.element[0],arguments)}).hover(function(){c(this).addClass("ui-state-hover")},function(){c(this).removeClass("ui-state-hover")}).focus(function(){c(this).addClass("ui-state-focus")}).blur(function(){c(this).removeClass("ui-state-focus")}).appendTo(e)});e.appendTo(this.uiDialog)}},_makeDraggable:function(){var d=this,f=this.options,e;this.uiDialog.draggable({cancel:".ui-dialog-content",handle:".ui-dialog-titlebar",containment:"document",start:function(){e=f.height;c(this).height(c(this).height()).addClass("ui-dialog-dragging");(f.dragStart&&f.dragStart.apply(d.element[0],arguments))},drag:function(){(f.drag&&f.drag.apply(d.element[0],arguments))},stop:function(){c(this).removeClass("ui-dialog-dragging").height(e);(f.dragStop&&f.dragStop.apply(d.element[0],arguments));c.ui.dialog.overlay.resize()}})},_makeResizable:function(g){g=(g===undefined?this.options.resizable:g);var d=this,f=this.options,e=typeof g=="string"?g:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",alsoResize:this.element,maxWidth:f.maxWidth,maxHeight:f.maxHeight,minWidth:f.minWidth,minHeight:f.minHeight,start:function(){c(this).addClass("ui-dialog-resizing");(f.resizeStart&&f.resizeStart.apply(d.element[0],arguments))},resize:function(){(f.resize&&f.resize.apply(d.element[0],arguments))},handles:e,stop:function(){c(this).removeClass("ui-dialog-resizing");f.height=c(this).height();f.width=c(this).width();(f.resizeStop&&f.resizeStop.apply(d.element[0],arguments));c.ui.dialog.overlay.resize()}}).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_position:function(i){var e=c(window),f=c(document),g=f.scrollTop(),d=f.scrollLeft(),h=g;if(c.inArray(i,["center","top","right","bottom","left"])>=0){i=[i=="right"||i=="left"?i:"center",i=="top"||i=="bottom"?i:"middle"]}if(i.constructor!=Array){i=["center","middle"]}if(i[0].constructor==Number){d+=i[0]}else{switch(i[0]){case"left":d+=0;break;case"right":d+=e.width()-this.uiDialog.outerWidth();break;default:case"center":d+=(e.width()-this.uiDialog.outerWidth())/2}}if(i[1].constructor==Number){g+=i[1]}else{switch(i[1]){case"top":g+=0;break;case"bottom":g+=e.height()-this.uiDialog.outerHeight();break;default:case"middle":g+=(e.height()-this.uiDialog.outerHeight())/2}}g=Math.max(g,h);this.uiDialog.css({top:g,left:d})},_setData:function(e,f){(b[e]&&this.uiDialog.data(b[e],f));switch(e){case"buttons":this._createButtons(f);break;case"closeText":this.uiDialogTitlebarCloseText.text(f);break;case"dialogClass":this.uiDialog.removeClass(this.options.dialogClass).addClass(a+f);break;case"draggable":(f?this._makeDraggable():this.uiDialog.draggable("destroy"));break;case"height":this.uiDialog.height(f);break;case"position":this._position(f);break;case"resizable":var d=this.uiDialog,g=this.uiDialog.is(":data(resizable)");(g&&!f&&d.resizable("destroy"));(g&&typeof f=="string"&&d.resizable("option","handles",f));(g||this._makeResizable(f));break;case"title":c(".ui-dialog-title",this.uiDialogTitlebar).html(f||" ");break;case"width":this.uiDialog.width(f);break}c.widget.prototype._setData.apply(this,arguments)},_size:function(){var e=this.options;this.element.css({height:0,minHeight:0,width:"auto"});var d=this.uiDialog.css({height:"auto",width:e.width}).height();this.element.css({minHeight:Math.max(e.minHeight-d,0),height:e.height=="auto"?"auto":Math.max(e.height-d,0)})}});c.extend(c.ui.dialog,{version:"1.7",defaults:{autoOpen:true,bgiframe:false,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,position:"center",resizable:true,show:null,stack:true,title:"",width:300,zIndex:1000},getter:"isOpen",uuid:0,maxZ:0,getTitleId:function(d){return"ui-dialog-title-"+(d.attr("id")||++this.uuid)},overlay:function(d){this.$el=c.ui.dialog.overlay.create(d)}});c.extend(c.ui.dialog.overlay,{instances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(d){return d+".dialog-overlay"}).join(" "),create:function(e){if(this.instances.length===0){setTimeout(function(){c(document).bind(c.ui.dialog.overlay.events,function(f){var g=c(f.target).parents(".ui-dialog").css("zIndex")||0;return(g>c.ui.dialog.overlay.maxZ)})},1);c(document).bind("keydown.dialog-overlay",function(f){(e.options.closeOnEscape&&f.keyCode&&f.keyCode==c.ui.keyCode.ESCAPE&&e.close(f))});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var d=c("
    ").appendTo(document.body).addClass("ui-widget-overlay").css({width:this.width(),height:this.height()});(e.options.bgiframe&&c.fn.bgiframe&&d.bgiframe());this.instances.push(d);return d},destroy:function(d){this.instances.splice(c.inArray(this.instances,d),1);if(this.instances.length===0){c([document,window]).unbind(".dialog-overlay")}d.remove()},height:function(){if(c.browser.msie&&c.browser.version<7){var e=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);var d=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);if(e
    ");if(!c.values){c.values=[this._valueMin(),this._valueMin()]}if(c.values.length&&c.values.length!=2){c.values=[c.values[0],c.values[0]]}}else{this.range=a("
    ")}this.range.appendTo(this.element).addClass("ui-slider-range");if(c.range=="min"||c.range=="max"){this.range.addClass("ui-slider-range-"+c.range)}this.range.addClass("ui-widget-header")}if(a(".ui-slider-handle",this.element).length==0){a('
    ').appendTo(this.element).addClass("ui-slider-handle")}if(c.values&&c.values.length){while(a(".ui-slider-handle",this.element).length').appendTo(this.element).addClass("ui-slider-handle")}}this.handles=a(".ui-slider-handle",this.element).addClass("ui-state-default ui-corner-all");this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(d){d.preventDefault()}).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){a(".ui-slider .ui-state-focus").removeClass("ui-state-focus");a(this).addClass("ui-state-focus")}).blur(function(){a(this).removeClass("ui-state-focus")});this.handles.each(function(d){a(this).data("index.ui-slider-handle",d)});this.handles.keydown(function(i){var f=true;var e=a(this).data("index.ui-slider-handle");if(b.options.disabled){return}switch(i.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:f=false;if(!b._keySliding){b._keySliding=true;a(this).addClass("ui-state-active");b._start(i,e)}break}var g,d,h=b._step();if(b.options.values&&b.options.values.length){g=d=b.values(e)}else{g=d=b.value()}switch(i.keyCode){case a.ui.keyCode.HOME:d=b._valueMin();break;case a.ui.keyCode.END:d=b._valueMax();break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(g==b._valueMax()){return}d=g+h;break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(g==b._valueMin()){return}d=g-h;break}b._slide(i,e,d);return f}).keyup(function(e){var d=a(this).data("index.ui-slider-handle");if(b._keySliding){b._stop(e,d);b._change(e,d);b._keySliding=false;a(this).removeClass("ui-state-active")}});this._refreshValue()},destroy:function(){this.handles.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()},_mouseCapture:function(d){var e=this.options;if(e.disabled){return false}this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();var h={x:d.pageX,y:d.pageY};var j=this._normValueFromMouse(h);var c=this._valueMax()+1,f;var k=this,i;this.handles.each(function(l){var m=Math.abs(j-k.values(l));if(c>m){c=m;f=a(this);i=l}});if(e.range==true&&this.values(1)==e.min){f=a(this.handles[++i])}this._start(d,i);k._handleIndex=i;f.addClass("ui-state-active").focus();var g=f.offset();var b=!a(d.target).parents().andSelf().is(".ui-slider-handle");this._clickOffset=b?{left:0,top:0}:{left:d.pageX-g.left-(f.width()/2),top:d.pageY-g.top-(f.height()/2)-(parseInt(f.css("borderTopWidth"),10)||0)-(parseInt(f.css("borderBottomWidth"),10)||0)+(parseInt(f.css("marginTop"),10)||0)};j=this._normValueFromMouse(h);this._slide(d,i,j);return true},_mouseStart:function(b){return true},_mouseDrag:function(d){var b={x:d.pageX,y:d.pageY};var c=this._normValueFromMouse(b);this._slide(d,this._handleIndex,c);return false},_mouseStop:function(b){this.handles.removeClass("ui-state-active");this._stop(b,this._handleIndex);this._change(b,this._handleIndex);this._handleIndex=null;this._clickOffset=null;return false},_detectOrientation:function(){this.orientation=this.options.orientation=="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(d){var c,h;if("horizontal"==this.orientation){c=this.elementSize.width;h=d.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{c=this.elementSize.height;h=d.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}var f=(h/c);if(f>1){f=1}if(f<0){f=0}if("vertical"==this.orientation){f=1-f}var e=this._valueMax()-this._valueMin(),i=f*e,b=i%this.options.step,g=this._valueMin()+i-b;if(b>(this.options.step/2)){g+=this.options.step}return parseFloat(g.toFixed(5))},_start:function(c,b){this._trigger("start",c,this._uiHash(b))},_slide:function(f,e,d){var g=this.handles[e];if(this.options.values&&this.options.values.length){var b=this.values(e?0:1);if((e==0&&d>=b)||(e==1&&d<=b)){d=b}if(d!=this.values(e)){var c=this.values();c[e]=d;var h=this._trigger("slide",f,this._uiHash(e,d,c));var b=this.values(e?0:1);if(h!==false){this.values(e,d,(f.type=="mousedown"&&this.options.animate),true)}}}else{if(d!=this.value()){var h=this._trigger("slide",f,this._uiHash(e,d));if(h!==false){this._setData("value",d,(f.type=="mousedown"&&this.options.animate))}}}},_stop:function(c,b){this._trigger("stop",c,this._uiHash(b))},_change:function(c,b){this._trigger("change",c,this._uiHash(b))},value:function(b){if(arguments.length){this._setData("value",b);this._change(null,0)}return this._value()},values:function(b,e,c,d){if(arguments.length>1){this.options.values[b]=e;this._refreshValue(c);if(!d){this._change(null,b)}}if(arguments.length){if(this.options.values&&this.options.values.length){return this._values(b)}else{return this.value()}}else{return this._values()}},_setData:function(b,d,c){a.widget.prototype._setData.apply(this,arguments);switch(b){case"orientation":this._detectOrientation();this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue(c);break;case"value":this._refreshValue(c);break}},_step:function(){var b=this.options.step;return b},_value:function(){var b=this.options.value;if(bthis._valueMax()){b=this._valueMax()}return b},_values:function(b){if(arguments.length){var c=this.options.values[b];if(cthis._valueMax()){c=this._valueMax()}return c}else{return this.options.values}},_valueMin:function(){var b=this.options.min;return b},_valueMax:function(){var b=this.options.max;return b},_refreshValue:function(c){var f=this.options.range,d=this.options,l=this;if(this.options.values&&this.options.values.length){var i,h;this.handles.each(function(p,n){var o=(l.values(p)-l._valueMin())/(l._valueMax()-l._valueMin())*100;var m={};m[l.orientation=="horizontal"?"left":"bottom"]=o+"%";a(this).stop(1,1)[c?"animate":"css"](m,d.animate);if(l.options.range===true){if(l.orientation=="horizontal"){(p==0)&&l.range.stop(1,1)[c?"animate":"css"]({left:o+"%"},d.animate);(p==1)&&l.range[c?"animate":"css"]({width:(o-lastValPercent)+"%"},{queue:false,duration:d.animate})}else{(p==0)&&l.range.stop(1,1)[c?"animate":"css"]({bottom:(o)+"%"},d.animate);(p==1)&&l.range[c?"animate":"css"]({height:(o-lastValPercent)+"%"},{queue:false,duration:d.animate})}}lastValPercent=o})}else{var j=this.value(),g=this._valueMin(),k=this._valueMax(),e=k!=g?(j-g)/(k-g)*100:0;var b={};b[l.orientation=="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[c?"animate":"css"](b,d.animate);(f=="min")&&(this.orientation=="horizontal")&&this.range.stop(1,1)[c?"animate":"css"]({width:e+"%"},d.animate);(f=="max")&&(this.orientation=="horizontal")&&this.range[c?"animate":"css"]({width:(100-e)+"%"},{queue:false,duration:d.animate});(f=="min")&&(this.orientation=="vertical")&&this.range.stop(1,1)[c?"animate":"css"]({height:e+"%"},d.animate);(f=="max")&&(this.orientation=="vertical")&&this.range[c?"animate":"css"]({height:(100-e)+"%"},{queue:false,duration:d.animate})}},_uiHash:function(d,e,c){var b=this.options.values&&this.options.values.length;return{handle:this.handles[d],value:e||(b?this.values(d):this.value()),values:c||(b&&this.values())}}}));a.extend(a.ui.slider,{getter:"value values",version:"1.7",eventPrefix:"slide",defaults:{animate:false,delay:0,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null}})})(jQuery);;/* - * jQuery UI Tabs 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Tabs - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.tabs",{_init:function(){if(this.options.deselectable!==undefined){this.options.collapsible=this.options.deselectable}this._tabify(true)},_setData:function(b,c){if(b=="selected"){if(this.options.collapsible&&c==this.options.selected){return}this.select(c)}else{this.options[b]=c;if(b=="deselectable"){this.options.collapsible=c}this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^A-Za-z0-9\-_:\.]/g,"")||this.options.idPrefix+a.data(b)},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+a.data(this.list[0]));return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(c,b){return{tab:c,panel:b,index:this.anchors.index(c)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(n){this.list=this.element.children("ul:first");this.lis=a("li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return a("a",this)[0]});this.panels=a([]);var p=this,d=this.options;var c=/^#.+/;this.anchors.each(function(r,o){var q=a(o).attr("href");var s=q.split("#")[0],u;if(s&&(s===location.toString().split("#")[0]||(u=a("base")[0])&&s===u.href)){q=o.hash;o.href=q}if(c.test(q)){p.panels=p.panels.add(p._sanitizeSelector(q))}else{if(q!="#"){a.data(o,"href.tabs",q);a.data(o,"load.tabs",q.replace(/#.*$/,""));var w=p._tabId(o);o.href="#"+w;var v=a("#"+w);if(!v.length){v=a(d.panelTemplate).attr("id",w).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(p.panels[r-1]||p.list);v.data("destroy.tabs",true)}p.panels=p.panels.add(v)}else{d.disabled.push(r)}}});if(n){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(d.selected===undefined){if(location.hash){this.anchors.each(function(q,o){if(o.hash==location.hash){d.selected=q;return false}})}if(typeof d.selected!="number"&&d.cookie){d.selected=parseInt(p._cookie(),10)}if(typeof d.selected!="number"&&this.lis.filter(".ui-tabs-selected").length){d.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}d.selected=d.selected||0}else{if(d.selected===null){d.selected=-1}}d.selected=((d.selected>=0&&this.anchors[d.selected])||d.selected<0)?d.selected:0;d.disabled=a.unique(d.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(q,o){return p.lis.index(q)}))).sort();if(a.inArray(d.selected,d.disabled)!=-1){d.disabled.splice(a.inArray(d.selected,d.disabled),1)}this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");if(d.selected>=0&&this.anchors.length){this.panels.eq(d.selected).removeClass("ui-tabs-hide");this.lis.eq(d.selected).addClass("ui-tabs-selected ui-state-active");p.element.queue("tabs",function(){p._trigger("show",null,p._ui(p.anchors[d.selected],p.panels[d.selected]))});this.load(d.selected)}a(window).bind("unload",function(){p.lis.add(p.anchors).unbind(".tabs");p.lis=p.anchors=p.panels=null})}else{d.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}this.element[d.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");if(d.cookie){this._cookie(d.selected,d.cookie)}for(var g=0,m;(m=this.lis[g]);g++){a(m)[a.inArray(g,d.disabled)!=-1&&!a(m).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled")}if(d.cache===false){this.anchors.removeData("cache.tabs")}this.lis.add(this.anchors).unbind(".tabs");if(d.event!="mouseover"){var f=function(o,i){if(i.is(":not(.ui-state-disabled)")){i.addClass("ui-state-"+o)}};var j=function(o,i){i.removeClass("ui-state-"+o)};this.lis.bind("mouseover.tabs",function(){f("hover",a(this))});this.lis.bind("mouseout.tabs",function(){j("hover",a(this))});this.anchors.bind("focus.tabs",function(){f("focus",a(this).closest("li"))});this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var b,h;if(d.fx){if(a.isArray(d.fx)){b=d.fx[0];h=d.fx[1]}else{b=h=d.fx}}function e(i,o){i.css({display:""});if(a.browser.msie&&o.opacity){i[0].style.removeAttribute("filter")}}var k=h?function(i,o){a(i).closest("li").removeClass("ui-state-default").addClass("ui-tabs-selected ui-state-active");o.hide().removeClass("ui-tabs-hide").animate(h,h.duration||"normal",function(){e(o,h);p._trigger("show",null,p._ui(i,o[0]))})}:function(i,o){a(i).closest("li").removeClass("ui-state-default").addClass("ui-tabs-selected ui-state-active");o.removeClass("ui-tabs-hide");p._trigger("show",null,p._ui(i,o[0]))};var l=b?function(o,i){i.animate(b,b.duration||"normal",function(){p.lis.removeClass("ui-tabs-selected ui-state-active").addClass("ui-state-default");i.addClass("ui-tabs-hide");e(i,b);p.element.dequeue("tabs")})}:function(o,i,q){p.lis.removeClass("ui-tabs-selected ui-state-active").addClass("ui-state-default");i.addClass("ui-tabs-hide");p.element.dequeue("tabs")};this.anchors.bind(d.event+".tabs",function(){var o=this,r=a(this).closest("li"),i=p.panels.filter(":not(.ui-tabs-hide)"),q=a(p._sanitizeSelector(this.hash));if((r.hasClass("ui-tabs-selected")&&!d.collapsible)||r.hasClass("ui-state-disabled")||r.hasClass("ui-state-processing")||p._trigger("select",null,p._ui(this,q[0]))===false){this.blur();return false}d.selected=p.anchors.index(this);p.abort();if(d.collapsible){if(r.hasClass("ui-tabs-selected")){d.selected=-1;if(d.cookie){p._cookie(d.selected,d.cookie)}p.element.queue("tabs",function(){l(o,i)}).dequeue("tabs");this.blur();return false}else{if(!i.length){if(d.cookie){p._cookie(d.selected,d.cookie)}p.element.queue("tabs",function(){k(o,q)});p.load(p.anchors.index(this));this.blur();return false}}}if(d.cookie){p._cookie(d.selected,d.cookie)}if(q.length){if(i.length){p.element.queue("tabs",function(){l(o,i)})}p.element.queue("tabs",function(){k(o,q)});p.load(p.anchors.index(this))}else{throw"jQuery UI Tabs: Mismatching fragment identifier."}if(a.browser.msie){this.blur()}});this.anchors.bind("click.tabs",function(){return false})},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 c=a.data(this,"href.tabs");if(c){this.href=c}var d=a(this).unbind(".tabs");a.each(["href","load","cache"],function(e,f){d.removeData(f+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){if(a.data(this,"destroy.tabs")){a(this).remove()}else{a(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"].join(" "))}});if(b.cookie){this._cookie(null,b.cookie)}},add:function(e,d,c){if(c===undefined){c=this.anchors.length}var b=this,g=this.options,i=a(g.tabTemplate.replace(/#\{href\}/g,e).replace(/#\{label\}/g,d)),h=!e.indexOf("#")?e.replace("#",""):this._tabId(a("a",i)[0]);i.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var f=a("#"+h);if(!f.length){f=a(g.panelTemplate).attr("id",h).data("destroy.tabs",true)}f.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(c>=this.lis.length){i.appendTo(this.list);f.appendTo(this.list[0].parentNode)}else{i.insertBefore(this.lis[c]);f.insertBefore(this.panels[c])}g.disabled=a.map(g.disabled,function(k,j){return k>=c?++k:k});this._tabify();if(this.anchors.length==1){i.addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){b._trigger("show",null,b._ui(b.anchors[0],b.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[c],this.panels[c]))},remove:function(b){var d=this.options,e=this.lis.eq(b).remove(),c=this.panels.eq(b).remove();if(e.hasClass("ui-tabs-selected")&&this.anchors.length>1){this.select(b+(b+1=b?--g:g});this._tabify();this._trigger("remove",null,this._ui(e.find("a")[0],c[0]))},enable:function(b){var c=this.options;if(a.inArray(b,c.disabled)==-1){return}this.lis.eq(b).removeClass("ui-state-disabled");c.disabled=a.grep(c.disabled,function(e,d){return e!=b});this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b]))},disable:function(c){var b=this,d=this.options;if(c!=d.selected){this.lis.eq(c).addClass("ui-state-disabled");d.disabled.push(c);d.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[c],this.panels[c]))}},select:function(b){if(typeof b=="string"){b=this.anchors.index(this.anchors.filter("[href$="+b+"]"))}else{if(b===null){b=-1}}if(b==-1&&this.options.collapsible){b=this.options.selected}this.anchors.eq(b).trigger(this.options.event+".tabs")},load:function(e){var c=this,g=this.options,b=this.anchors.eq(e)[0],d=a.data(b,"load.tabs");this.abort();if(!d||this.element.queue("tabs").length!==0&&a.data(b,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(e).addClass("ui-state-processing");if(g.spinner){var f=a("span",b);f.data("label.tabs",f.html()).html(g.spinner)}this.xhr=a.ajax(a.extend({},g.ajaxOptions,{url:d,success:function(i,h){a(c._sanitizeSelector(b.hash)).html(i);c._cleanup();if(g.cache){a.data(b,"cache.tabs",true)}c._trigger("load",null,c._ui(c.anchors[e],c.panels[e]));try{g.ajaxOptions.success(i,h)}catch(j){}c.element.dequeue("tabs")}}))},abort:function(){this.element.queue([]);this.panels.stop(false,true);if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup()},url:function(c,b){this.anchors.eq(c).removeData("cache.tabs").data("load.tabs",b)},length:function(){return this.anchors.length}});a.extend(a.ui.tabs,{version:"1.7",getter:"length",defaults:{ajaxOptions:null,cache:false,cookie:null,collapsible:false,disabled:[],event:"click",fx:null,idPrefix:"ui-tabs-",panelTemplate:"
    ",spinner:"Loading…",tabTemplate:'
  • #{label}
  • '}});a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(d,f){var b=this,g=this.options;var c=b._rotate||(b._rotate=function(h){clearTimeout(b.rotation);b.rotation=setTimeout(function(){var i=g.selected;b.select(++i')}$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",log:function(){if(this.debug){console.log.apply("",arguments)}},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=="div"||nodeName=="span");if(!target.id){target.id="dp"+(++this.uuid)}var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=="input"){this._connectDatepicker(target,inst)}else{if(inline){this._inlineDatepicker(target,inst)}}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,"\\\\$1");return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('
    '))}},_connectDatepicker:function(target,inst){var input=$(target);if(input.hasClass(this.markerClassName)){return}var appendText=this._get(inst,"appendText");var isRTL=this._get(inst,"isRTL");if(appendText){input[isRTL?"before":"after"](''+appendText+"")}var showOn=this._get(inst,"showOn");if(showOn=="focus"||showOn=="both"){input.focus(this._showDatepicker)}if(showOn=="button"||showOn=="both"){var buttonText=this._get(inst,"buttonText");var buttonImage=this._get(inst,"buttonImage");var trigger=$(this._get(inst,"buttonImageOnly")?$("").addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('').addClass(this._triggerClass).html(buttonImage==""?buttonText:$("").attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?"before":"after"](trigger);trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target){$.datepicker._hideDatepicker()}else{$.datepicker._showDatepicker(target)}return false})}input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst)},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)){return}divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);this._updateAlternate(inst)},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id="dp"+(++this.uuid);this._dialogInput=$('');this._dialogInput.keydown(this._doKeyDown);$("body").append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst)}extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}this._dialogInput.css("left",this._pos[0]+"px").css("top",this._pos[1]+"px");inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI){$.blockUI(this.dpDiv)}$.data(this._dialogInput[0],PROP_NAME,inst);return this},_destroyDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=="input"){$target.siblings("."+this._appendClass).remove().end().siblings("."+this._triggerClass).remove().end().removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress)}else{if(nodeName=="div"||nodeName=="span"){$target.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=false;$target.siblings("button."+this._triggerClass).each(function(){this.disabled=false}).end().siblings("img."+this._triggerClass).css({opacity:"1.0",cursor:""})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().removeClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)})},_disableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=true;$target.siblings("button."+this._triggerClass).each(function(){this.disabled=true}).end().siblings("img."+this._triggerClass).css({opacity:"0.5",cursor:"default"})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().addClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},_isDisabledDatepicker:function(target){if(!target){return false}for(var i=0;i-1)}},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!="input"){input=$("input",input.parentNode)[0]}if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input){return}var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,"beforeShow");extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,"");$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog){input.value=""}if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight}var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop}var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});$.datepicker._updateDatepicker(inst);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?"static":(isFixed?"fixed":"absolute")),display:"none",left:offset.left+"px",top:offset.top+"px"});if(!inst.inline){var showAnim=$.datepicker._get(inst,"showAnim")||"show";var duration=$.datepicker._get(inst,"duration");var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7){$("iframe.ui-datepicker-cover").css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4})}};if($.effects&&$.effects[showAnim]){inst.dpDiv.show(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[showAnim](duration,postProcess)}if(duration==""){postProcess()}if(inst.input[0].type!="hidden"){inst.input[0].focus()}$.datepicker._curInst=inst}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};var self=this;inst.dpDiv.empty().append(this._generateHTML(inst)).find("iframe.ui-datepicker-cover").css({width:dims.width,height:dims.height}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){$(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).removeClass("ui-datepicker-next-hover")}}).bind("mouseover",function(){if(!self._isDisabledDatepicker(inst.inline?inst.dpDiv.parent()[0]:inst.input[0])){$(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");$(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).addClass("ui-datepicker-next-hover")}}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();var numMonths=this._getNumberOfMonths(inst);var cols=numMonths[1];var width=17;if(cols>1){inst.dpDiv.addClass("ui-datepicker-multi-"+cols).css("width",(width*cols)+"em")}else{inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("")}inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");inst.dpDiv[(this._get(inst,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(inst.input&&inst.input[0].type!="hidden"&&inst==$.datepicker._curInst){$(inst.input[0]).focus()}},_checkOffset:function(inst,offset,isFixed){var dpWidth=inst.dpDiv.outerWidth();var dpHeight=inst.dpDiv.outerHeight();var inputWidth=inst.input?inst.input.outerWidth():0;var inputHeight=inst.input?inst.input.outerHeight():0;var viewWidth=(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)+$(document).scrollLeft();var viewHeight=(window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight)+$(document).scrollTop();offset.left-=(this._get(inst,"isRTL")?(dpWidth-inputWidth):0);offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;offset.left-=(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?Math.abs(offset.left+dpWidth-viewWidth):0;offset.top-=(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?Math.abs(offset.top+dpHeight+inputHeight*2-viewHeight):0;return offset},_findPos:function(obj){while(obj&&(obj.type=="hidden"||obj.nodeType!=1)){obj=obj.nextSibling}var position=$(obj).offset();return[position.left,position.top]},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))){return}if(inst.stayOpen){this._selectDate("#"+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear))}inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,"duration"));var showAnim=this._get(inst,"showAnim");var postProcess=function(){$.datepicker._tidyDialog(inst)};if(duration!=""&&$.effects&&$.effects[showAnim]){inst.dpDiv.hide(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[(duration==""?"hide":(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide")))](duration,postProcess)}if(duration==""){this._tidyDialog(inst)}var onClose=this._get(inst,"onClose");if(onClose){onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():""),inst])}this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if($.blockUI){$.unblockUI();$("body").append(this.dpDiv)}}this._inDialog=false}this._curInst=null},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(event){if(!$.datepicker._curInst){return}var $target=$(event.target);if(($target.parents("#"+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)){$.datepicker._hideDatepicker(null,"")}},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);if(this._isDisabledDatepicker(target[0])){return}this._adjustInstDate(inst,offset+(period=="M"?this._get(inst,"showCurrentAtPos"):0),period);this._updateDatepicker(inst)},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,"gotoCurrent")&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear}else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear()}this._notifyChange(inst);this._adjustDate(target)},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst["selected"+(period=="M"?"Month":"Year")]=inst["draw"+(period=="M"?"Month":"Year")]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target)},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie){inst.input[0].focus()}inst._selectingMonthYear=!inst._selectingMonthYear},_selectDay:function(id,month,year,td){var target=$(id);if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){return}var inst=this._getInst(target[0]);inst.selectedDay=inst.currentDay=$("a",td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null}this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay));this._updateDatepicker(inst)}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,"")},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(inst.input){inst.input.val(dateStr)}this._updateAlternate(inst);var onSelect=this._get(inst,"onSelect");if(onSelect){onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}else{if(inst.input){inst.input.trigger("change")}}if(inst.inline){this._updateDatepicker(inst)}else{if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,"duration"));this._lastInput=inst.input[0];if(typeof(inst.input[0])!="object"){inst.input[0].focus()}this._lastInput=null}}},_updateAlternate:function(inst){var altField=this._get(inst,"altField");if(altField){var altFormat=this._get(inst,"altFormat")||this._get(inst,"dateFormat");var date=this._getDate(inst);dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));$(altField).each(function(){$(this).val(dateStr)})}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),""]},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate());var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDatenew Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)0&&iValue="0"&&value.charAt(iValue)<="9"){num=num*10+parseInt(value.charAt(iValue++),10);size--}if(size==origSize){throw"Missing number at position "+iValue}return num};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j0&&iValue-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim){break}month++;day-=dim}while(true)}var date=this._daylightSavingAdjust(new Date(year,month-1,day));if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},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",TIMESTAMP:"@",W3C:"yy-mm-dd",formatDate:function(format,date,settings){if(!date){return""}var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1=0;m--){doy+=this._getDaysInMonth(date.getFullYear(),m)}output+=formatNumber("o",doy,3);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(lookAhead("y")?date.getFullYear():(date.getYear()%100<10?"0":"")+date.getYear()%100);break;case"@":output+=date.getTime();break;case"'":if(lookAhead("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}}return output},_possibleChars:function(format){var chars="";var literal=false;for(var iFormat=0;iFormatmaxDate?maxDate:date);return date},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setDate(date.getDate()+offset);return date};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"d"){case"d":case"D":day+=parseInt(matches[1],10);break;case"w":case"W":day+=parseInt(matches[1],10)*7;break;case"m":case"M":month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case"y":case"Y":year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break}matches=pattern.exec(offset)}return new Date(year,month,day)};date=(date==null?defaultDate:(typeof date=="string"?offsetString(date,this._getDaysInMonth):(typeof date=="number"?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));date=(date&&date.toString()=="Invalid Date"?defaultDate:date);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0)}return this._daylightSavingAdjust(date)},_daylightSavingAdjust:function(date){if(!date){return null}date.setHours(date.getHours()>12?date.getHours()+2:0);return date},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear){this._notifyChange(inst)}this._adjustInstDate(inst);if(inst.input){inst.input.val(clear?"":this._formatDate(inst))}},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=="")?null:this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return startDate},_generateHTML:function(inst){var today=new Date();today=this._daylightSavingAdjust(new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,"isRTL");var showButtonPanel=this._get(inst,"showButtonPanel");var hideIfNoPrevNext=this._get(inst,"hideIfNoPrevNext");var navigationAsDateFormat=this._get(inst,"navigationAsDateFormat");var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,"showCurrentAtPos");var stepMonths=this._get(inst,"stepMonths");var stepBigMonths=this._get(inst,"stepBigMonths");var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--}if(maxDate){var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate()));maxDraw=(minDate&&maxDrawmaxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--}}}inst.drawMonth=drawMonth;inst.drawYear=drawYear;var prevText=this._get(inst,"prevText");prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),this._getFormatConfig(inst)));var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?''+prevText+"":(hideIfNoPrevNext?"":''+prevText+""));var nextText=this._get(inst,"nextText");nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),this._getFormatConfig(inst)));var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?''+nextText+"":(hideIfNoPrevNext?"":''+nextText+""));var currentText=this._get(inst,"currentText");var gotoDate=(this._get(inst,"gotoCurrent")&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var controls=(!inst.inline?'":"");var buttonPanel=(showButtonPanel)?'
    '+(isRTL?controls:"")+(this._isInRange(inst,gotoDate)?'":"")+(isRTL?"":controls)+"
    ":"";var firstDay=parseInt(this._get(inst,"firstDay"),10);firstDay=(isNaN(firstDay)?0:firstDay);var dayNames=this._get(inst,"dayNames");var dayNamesShort=this._get(inst,"dayNamesShort");var dayNamesMin=this._get(inst,"dayNamesMin");var monthNames=this._get(inst,"monthNames");var monthNamesShort=this._get(inst,"monthNamesShort");var beforeShowDay=this._get(inst,"beforeShowDay");var showOtherMonths=this._get(inst,"showOtherMonths");var calculateWeek=this._get(inst,"calculateWeek")||this.iso8601Week;var endDate=inst.endDay?this._daylightSavingAdjust(new Date(inst.endYear,inst.endMonth,inst.endDay)):currentDate;var defaultDate=this._getDefaultDate(inst);var html="";for(var row=0;row'+(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):"")+(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):"")+this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,monthNames,monthNamesShort)+'';var thead="";for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;thead+="=5?' class="ui-datepicker-week-end"':"")+'>'+dayNamesMin[day]+""}calender+=thead+"";var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth){inst.selectedDay=Math.min(inst.selectedDay,daysInMonth)}var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));for(var dRow=0;dRow";var tbody="";for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,""]);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDatemaxDate);tbody+='";printDate.setDate(printDate.getDate()+1);printDate=this._daylightSavingAdjust(printDate)}calender+=tbody+""}drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++}calender+="
    =currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" "+this._currentClass:"")+(printDate.getTime()==today.getTime()?" ui-datepicker-today":""))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':"")+(unselectable?"":" onclick=\"DP_jQuery.datepicker._selectDay('#"+inst.id+"',"+drawMonth+","+drawYear+', this);return false;"')+">"+(otherMonth?(showOtherMonths?printDate.getDate():" "):(unselectable?''+printDate.getDate()+"":'=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" ui-state-active":"")+'" href="#">'+printDate.getDate()+""))+"
    "+(isMultiMonth?""+((numMonths[0]>0&&col==numMonths[1]-1)?'
    ':""):"");group+=calender}html+=group}html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?" ":"")}if(secondary||!changeYear){html+=''+drawYear+""}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?" ":"")+monthHtml}html+="";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&datemaxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7";window.DP_jQuery=$})(jQuery);;/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ (function(a){a.widget("ui.progressbar",{_init:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this._valueMin(),"aria-valuemax":this._valueMax(),"aria-valuenow":this._value()});this.valueDiv=a('
    ').appendTo(this.element);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").removeData("progressbar").unbind(".progressbar");this.valueDiv.remove();a.widget.prototype.destroy.apply(this,arguments)},value:function(b){arguments.length&&this._setData("value",b);return this._value()},_setData:function(b,c){switch(b){case"value":this.options.value=c;this._refreshValue();this._trigger("change",null,{});break}a.widget.prototype._setData.apply(this,arguments)},_value:function(){var b=this.options.value;if(bthis._valueMax()){b=this._valueMax()}return b},_valueMin:function(){var b=0;return b},_valueMax:function(){var b=100;return b},_refreshValue:function(){var b=this.value();this.valueDiv[b==this._valueMax()?"addClass":"removeClass"]("ui-corner-right");this.valueDiv.width(b+"%");this.element.attr("aria-valuenow",b)}});a.extend(a.ui.progressbar,{version:"1.7",defaults:{value:0}})})(jQuery);;/* - * jQuery UI Effects 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/ - */ jQuery.effects||(function(d){d.effects={version:"1.7",save:function(g,h){for(var f=0;f');var j=f.parent();if(f.css("position")=="static"){j.css({position:"relative"});f.css({position:"relative"})}else{var i=f.css("top");if(isNaN(parseInt(i,10))){i="auto"}var h=f.css("left");if(isNaN(parseInt(h,10))){h="auto"}j.css({position:f.css("position"),top:i,left:h,zIndex:f.css("z-index")}).show();f.css({position:"relative",top:0,left:0})}j.css(g);return j},removeWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent().replaceWith(f)}return f},setTransition:function(g,i,f,h){h=h||{};d.each(i,function(k,j){unit=g.cssUnit(j);if(unit[0]>0){h[j]=unit[0]*f+unit[1]}});return h},animateClass:function(h,i,k,j){var f=(typeof k=="function"?k:(j?j:null));var g=(typeof k=="string"?k:null);return this.each(function(){var q={};var o=d(this);var p=o.attr("style")||"";if(typeof p=="object"){p=p.cssText}if(h.toggle){o.hasClass(h.toggle)?h.remove=h.toggle:h.add=h.toggle}var l=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.addClass(h.add)}if(h.remove){o.removeClass(h.remove)}var m=d.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(h.add){o.removeClass(h.add)}if(h.remove){o.addClass(h.remove)}for(var r in m){if(typeof m[r]!="function"&&m[r]&&r.indexOf("Moz")==-1&&r.indexOf("length")==-1&&m[r]!=l[r]&&(r.match(/color/i)||(!r.match(/color/i)&&!isNaN(parseInt(m[r],10))))&&(l.position!="static"||(l.position=="static"&&!r.match(/left|top|bottom|right/)))){q[r]=m[r]}}o.animate(q,i,g,function(){if(typeof d(this).attr("style")=="object"){d(this).attr("style")["cssText"]="";d(this).attr("style")["cssText"]=p}else{d(this).attr("style",p)}if(h.add){d(this).addClass(h.add)}if(h.remove){d(this).removeClass(h.remove)}if(f){f.apply(this,arguments)}})})}};function c(g,f){var i=g[1]&&g[1].constructor==Object?g[1]:{};if(f){i.mode=f}var h=g[1]&&g[1].constructor!=Object?g[1]:(i.duration?i.duration:g[2]);h=d.fx.off?0:typeof h==="number"?h:d.fx.speeds[h]||d.fx.speeds._default;var j=i.callback||(d.isFunction(g[1])&&g[1])||(d.isFunction(g[2])&&g[2])||(d.isFunction(g[3])&&g[3]);return[g[0],i,h,j]}d.fn.extend({_show:d.fn.show,_hide:d.fn.hide,__toggle:d.fn.toggle,_addClass:d.fn.addClass,_removeClass:d.fn.removeClass,_toggleClass:d.fn.toggleClass,effect:function(g,f,h,i){return d.effects[g]?d.effects[g].call(this,{method:g,options:f||{},duration:h,callback:i}):null},show:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._show.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"show"))}},hide:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))){return this._hide.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"hide"))}},toggle:function(){if(!arguments[0]||(arguments[0].constructor==Number||(/(slow|normal|fast)/).test(arguments[0]))||(arguments[0].constructor==Function)){return this.__toggle.apply(this,arguments)}else{return this.effect.apply(this,c(arguments,"toggle"))}},addClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{add:g},f,i,h]):this._addClass(g)},removeClass:function(g,f,i,h){return f?d.effects.animateClass.apply(this,[{remove:g},f,i,h]):this._removeClass(g)},toggleClass:function(g,f,i,h){return((typeof f!=="boolean")&&f)?d.effects.animateClass.apply(this,[{toggle:g},f,i,h]):this._toggleClass(g,f)},morph:function(f,h,g,j,i){return d.effects.animateClass.apply(this,[{add:h,remove:f},g,j,i])},switchClass:function(){return this.morph.apply(this,arguments)},cssUnit:function(f){var g=this.css(f),h=[];d.each(["em","px","%","pt"],function(j,k){if(g.indexOf(k)>0){h=[parseFloat(g),k]}});return h}});d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(g,f){d.fx.step[f]=function(h){if(h.state==0){h.start=e(h.elem,f);h.end=b(h.end)}h.elem.style[f]="rgb("+[Math.max(Math.min(parseInt((h.pos*(h.end[0]-h.start[0]))+h.start[0],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[1]-h.start[1]))+h.start[1],10),255),0),Math.max(Math.min(parseInt((h.pos*(h.end[2]-h.start[2]))+h.start[2],10),255),0)].join(",")+")"}});function b(g){var f;if(g&&g.constructor==Array&&g.length==3){return g}if(f=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(g)){return[parseInt(f[1],10),parseInt(f[2],10),parseInt(f[3],10)]}if(f=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(g)){return[parseFloat(f[1])*2.55,parseFloat(f[2])*2.55,parseFloat(f[3])*2.55]}if(f=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(g)){return[parseInt(f[1],16),parseInt(f[2],16),parseInt(f[3],16)]}if(f=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(g)){return[parseInt(f[1]+f[1],16),parseInt(f[2]+f[2],16),parseInt(f[3]+f[3],16)]}if(f=/rgba\(0, 0, 0, 0\)/.exec(g)){return a.transparent}return a[d.trim(g).toLowerCase()]}function e(h,f){var g;do{g=d.curCSS(h,f);if(g!=""&&g!="transparent"||d.nodeName(h,"body")){break}f="backgroundColor"}while(h=h.parentNode);return b(g)}var a={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]};d.easing.jswing=d.easing.swing;d.extend(d.easing,{def:"easeOutQuad",swing:function(g,h,f,j,i){return d.easing[d.easing.def](g,h,f,j,i)},easeInQuad:function(g,h,f,j,i){return j*(h/=i)*h+f},easeOutQuad:function(g,h,f,j,i){return -j*(h/=i)*(h-2)+f},easeInOutQuad:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h+f}return -j/2*((--h)*(h-2)-1)+f},easeInCubic:function(g,h,f,j,i){return j*(h/=i)*h*h+f},easeOutCubic:function(g,h,f,j,i){return j*((h=h/i-1)*h*h+1)+f},easeInOutCubic:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h+f}return j/2*((h-=2)*h*h+2)+f},easeInQuart:function(g,h,f,j,i){return j*(h/=i)*h*h*h+f},easeOutQuart:function(g,h,f,j,i){return -j*((h=h/i-1)*h*h*h-1)+f},easeInOutQuart:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h+f}return -j/2*((h-=2)*h*h*h-2)+f},easeInQuint:function(g,h,f,j,i){return j*(h/=i)*h*h*h*h+f},easeOutQuint:function(g,h,f,j,i){return j*((h=h/i-1)*h*h*h*h+1)+f},easeInOutQuint:function(g,h,f,j,i){if((h/=i/2)<1){return j/2*h*h*h*h*h+f}return j/2*((h-=2)*h*h*h*h+2)+f},easeInSine:function(g,h,f,j,i){return -j*Math.cos(h/i*(Math.PI/2))+j+f},easeOutSine:function(g,h,f,j,i){return j*Math.sin(h/i*(Math.PI/2))+f},easeInOutSine:function(g,h,f,j,i){return -j/2*(Math.cos(Math.PI*h/i)-1)+f},easeInExpo:function(g,h,f,j,i){return(h==0)?f:j*Math.pow(2,10*(h/i-1))+f},easeOutExpo:function(g,h,f,j,i){return(h==i)?f+j:j*(-Math.pow(2,-10*h/i)+1)+f},easeInOutExpo:function(g,h,f,j,i){if(h==0){return f}if(h==i){return f+j}if((h/=i/2)<1){return j/2*Math.pow(2,10*(h-1))+f}return j/2*(-Math.pow(2,-10*--h)+2)+f},easeInCirc:function(g,h,f,j,i){return -j*(Math.sqrt(1-(h/=i)*h)-1)+f},easeOutCirc:function(g,h,f,j,i){return j*Math.sqrt(1-(h=h/i-1)*h)+f},easeInOutCirc:function(g,h,f,j,i){if((h/=i/2)<1){return -j/2*(Math.sqrt(1-h*h)-1)+f}return j/2*(Math.sqrt(1-(h-=2)*h)+1)+f},easeInElastic:function(g,i,f,m,l){var j=1.70158;var k=0;var h=m;if(i==0){return f}if((i/=l)==1){return f+m}if(!k){k=l*0.3}if(h").css({position:"absolute",visibility:"visible",left:-d*(g/e),top:-f*(c/k)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:g/e,height:c/k,left:l.left+d*(g/e)+(b.options.mode=="show"?(d-Math.floor(e/2))*(g/e):0),top:l.top+f*(c/k)+(b.options.mode=="show"?(f-Math.floor(k/2))*(c/k):0),opacity:b.options.mode=="show"?0:1}).animate({left:l.left+d*(g/e)+(b.options.mode=="show"?0:(d-Math.floor(e/2))*(g/e)),top:l.top+f*(c/k)+(b.options.mode=="show"?0:(f-Math.floor(k/2))*(c/k)),opacity:b.options.mode=="show"?1:0},b.duration||500)}}setTimeout(function(){b.options.mode=="show"?h.css({visibility:"visible"}):h.css({visibility:"visible"}).hide();if(b.callback){b.callback.apply(h[0])}h.dequeue();a("div.ui-effects-explode").remove()},b.duration||500)})}})(jQuery);;/* - * jQuery UI Effects Fold 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Fold - * - * Depends: - * effects.core.js - */ (function(a){a.effects.fold=function(b){return this.queue(function(){var e=a(this),k=["position","top","left"];var h=a.effects.setMode(e,b.options.mode||"hide");var o=b.options.size||15;var n=!(!b.options.horizFirst);var g=b.duration?b.duration/2:a.fx.speeds._default/2;a.effects.save(e,k);e.show();var d=a.effects.createWrapper(e).css({overflow:"hidden"});var i=((h=="show")!=n);var f=i?["width","height"]:["height","width"];var c=i?[d.width(),d.height()]:[d.height(),d.width()];var j=/([0-9]+)%/.exec(o);if(j){o=parseInt(j[1],10)/100*c[h=="hide"?0:1]}if(h=="show"){d.css(n?{height:0,width:o}:{height:o,width:0})}var m={},l={};m[f[0]]=h=="show"?c[0]:o;l[f[1]]=h=="show"?c[1]:0;d.animate(m,g,b.options.easing).animate(l,g,b.options.easing,function(){if(h=="hide"){e.hide()}a.effects.restore(e,k);a.effects.removeWrapper(e);if(b.callback){b.callback.apply(e[0],arguments)}e.dequeue()})})}})(jQuery);;/* - * jQuery UI Effects Highlight 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Highlight - * - * Depends: - * effects.core.js - */ (function(a){a.effects.highlight=function(b){return this.queue(function(){var e=a(this),d=["backgroundImage","backgroundColor","opacity"];var h=a.effects.setMode(e,b.options.mode||"show");var c=b.options.color||"#ffff99";var g=e.css("backgroundColor");a.effects.save(e,d);e.show();e.css({backgroundImage:"none",backgroundColor:c});var f={backgroundColor:g};if(h=="hide"){f.opacity=0}e.animate(f,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){if(h=="hide"){e.hide()}a.effects.restore(e,d);if(h=="show"&&a.browser.msie){this.style.removeAttribute("filter")}if(b.callback){b.callback.apply(this,arguments)}e.dequeue()}})})}})(jQuery);;/* - * jQuery UI Effects Pulsate 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Effects/Pulsate - * - * Depends: - * effects.core.js - */ (function(a){a.effects.pulsate=function(b){return this.queue(function(){var d=a(this);var g=a.effects.setMode(d,b.options.mode||"show");var f=b.options.times||5;var e=b.duration?b.duration/2:a.fx.speeds._default/2;if(g=="hide"){f--}if(d.is(":hidden")){d.css("opacity",0);d.show();d.animate({opacity:1},e,b.options.easing);f=f-2}for(var c=0;c').appendTo(document.body).addClass(b.options.className).css({top:d.top,left:d.left,height:f.innerHeight(),width:f.innerWidth(),position:"absolute"}).animate(g,b.duration,b.options.easing,function(){c.remove();(b.callback&&b.callback.apply(f[0],arguments));f.dequeue()})})}})(jQuery);; \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d634..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png deleted file mode 100644 index e65ca12..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_glass_75_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png deleted file mode 100644 index 0e05810..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-bg_inset-soft_95_fef1ec_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png deleted file mode 100644 index 67560da..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index b2c9052..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png deleted file mode 100644 index 0cd64a2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png deleted file mode 100644 index 2e5180e..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 2db88b7..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.accordion.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.accordion.css deleted file mode 100644 index ee1b1b6..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.accordion.css +++ /dev/null @@ -1,9 +0,0 @@ -/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.all.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.all.css deleted file mode 100644 index 543e4c3..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.all.css +++ /dev/null @@ -1,2 +0,0 @@ -@import "ui.base.css"; -@import "ui.theme.css"; diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.base.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.base.css deleted file mode 100644 index d716095..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.base.css +++ /dev/null @@ -1,8 +0,0 @@ -@import url("ui.core.css"); -@import url("ui.resizable.css"); -@import url("ui.accordion.css"); -@import url("ui.dialog.css"); -@import url("ui.slider.css"); -@import url("ui.tabs.css"); -@import url("ui.datepicker.css"); -@import url("ui.progressbar.css"); \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.core.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.core.css deleted file mode 100644 index c2f18f2..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.core.css +++ /dev/null @@ -1,37 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.datepicker.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.datepicker.css deleted file mode 100644 index 567f8c9..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.datepicker.css +++ /dev/null @@ -1,62 +0,0 @@ -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.dialog.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.dialog.css deleted file mode 100644 index 2997595..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.dialog.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.progressbar.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.progressbar.css deleted file mode 100644 index bc0939e..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.progressbar.css +++ /dev/null @@ -1,4 +0,0 @@ -/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.resizable.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.resizable.css deleted file mode 100644 index 44efeb2..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.resizable.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;} \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.slider.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.slider.css deleted file mode 100644 index 4c56218..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.slider.css +++ /dev/null @@ -1,17 +0,0 @@ -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.tabs.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.tabs.css deleted file mode 100644 index 3ca6b9a..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.tabs.css +++ /dev/null @@ -1,11 +0,0 @@ -/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.theme.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.theme.css deleted file mode 100644 index 6296e4e..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/base/ui.theme.css +++ /dev/null @@ -1,243 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/ -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: /*{ffDefault}*/; font-size: 9pt/*{fsDefault}*/; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: /*{ffDefault}*/; font-size: 9pt; } -.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_glass_75_ffffff_1x400.png)/*{bgImgUrlContent}*/ 0/*{bgContentXPos}*/ 0/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; } -.ui-widget-content a { color: #222222/*{fcContent}*/; } -.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 0/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; } -.ui-widget-header a { color: #222222/*{fcHeader}*/; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 0/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 0/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 0/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 0/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636/*{fcHighlight}*/; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_inset-soft_95_fef1ec_1x100.png)/*{bgImgUrlError}*/ 0/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #363636/*{fcError}*/; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a/*{fcError}*/; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-top { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-right { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-left { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all { -moz-border-radius: 4px/*{cornerRadius}*/; -webkit-border-radius: 4px/*{cornerRadius}*/; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ none/*{bgImgUrlOverlay}*/ 0/*{bgOverlayXPos}*/ 0/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; } -.ui-widget-shadow { margin: -4px/*{offsetTopShadow}*/ 0 0 -4px/*{offsetLeftShadow}*/; padding: 4px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ none/*{bgImgUrlShadow}*/ 0/*{bgShadowXPos}*/ 0/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .35;filter:Alpha(Opacity=35)/*{opacityShadow}*/; -moz-border-radius: 4px/*{cornerRadiusShadow}*/; -webkit-border-radius: 4px/*{cornerRadiusShadow}*/; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index ac8b229..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d634..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index 4443fdc..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png deleted file mode 100644 index 67560da..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index b425c44..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png deleted file mode 100644 index 0cd64a2..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png deleted file mode 100644 index 2e5180e..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 2db88b7..0000000 Binary files a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css deleted file mode 100644 index b2d67e2..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/jquery-ui-1.7.custom.css +++ /dev/null @@ -1,405 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; } -.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; }/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; }/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -}/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css deleted file mode 100644 index ee1b1b6..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.accordion.css +++ /dev/null @@ -1,9 +0,0 @@ -/* Accordion -----------------------------------*/ -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; } -.ui-accordion .ui-accordion-content-active { display: block; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.all.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.all.css deleted file mode 100644 index 543e4c3..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.all.css +++ /dev/null @@ -1,2 +0,0 @@ -@import "ui.base.css"; -@import "ui.theme.css"; diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.base.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.base.css deleted file mode 100644 index d716095..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.base.css +++ /dev/null @@ -1,8 +0,0 @@ -@import url("ui.core.css"); -@import url("ui.resizable.css"); -@import url("ui.accordion.css"); -@import url("ui.dialog.css"); -@import url("ui.slider.css"); -@import url("ui.tabs.css"); -@import url("ui.datepicker.css"); -@import url("ui.progressbar.css"); \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.core.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.core.css deleted file mode 100644 index c2f18f2..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.core.css +++ /dev/null @@ -1,37 +0,0 @@ -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -*/ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute; left: -99999999px; } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css deleted file mode 100644 index 567f8c9..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.datepicker.css +++ /dev/null @@ -1,62 +0,0 @@ -/* Datepicker -----------------------------------*/ -.ui-datepicker { width: 17em; padding: .2em .2em 0; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; } -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css deleted file mode 100644 index 2997595..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.dialog.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Dialog -----------------------------------*/ -.ui-dialog { position: relative; padding: .2em; width: 300px; } -.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css deleted file mode 100644 index bc0939e..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.progressbar.css +++ /dev/null @@ -1,4 +0,0 @@ -/* Progressbar -----------------------------------*/ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css deleted file mode 100644 index 44efeb2..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.resizable.css +++ /dev/null @@ -1,13 +0,0 @@ -/* Resizable -----------------------------------*/ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;} \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.slider.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.slider.css deleted file mode 100644 index 4c56218..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.slider.css +++ /dev/null @@ -1,17 +0,0 @@ -/* Slider -----------------------------------*/ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css deleted file mode 100644 index 3ca6b9a..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.tabs.css +++ /dev/null @@ -1,11 +0,0 @@ -/* Tabs -----------------------------------*/ -.ui-tabs { padding: .2em; zoom: 1; } -.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; } -.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.theme.css b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.theme.css deleted file mode 100644 index 10f76b4..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/themes/smoothness/ui.theme.css +++ /dev/null @@ -1,245 +0,0 @@ - - -/* -* jQuery UI CSS Framework -* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -*/ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; outline: none; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; outline: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; outline: none; } -.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; outline: none; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; outline: none; text-decoration: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; } -.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; } -.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; } -.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; } -.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; } \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.accordion.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.accordion.js deleted file mode 100644 index fc71ecf..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.accordion.js +++ /dev/null @@ -1,477 +0,0 @@ -/* - * jQuery UI Accordion 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Accordion - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.accordion", { - - _init: function() { - - var o = this.options, self = this; - this.running = 0; - - // if the user set the alwaysOpen option on init - // then we need to set the collapsible option - // if they set both on init, collapsible will take priority - if (o.collapsible == $.ui.accordion.defaults.collapsible && - o.alwaysOpen != $.ui.accordion.defaults.alwaysOpen) { - o.collapsible = !o.alwaysOpen; - } - - if ( o.navigation ) { - var current = this.element.find("a").filter(o.navigationFilter); - if ( current.length ) { - if ( current.filter(o.header).length ) { - this.active = current; - } else { - this.active = current.parent().parent().prev(); - current.addClass("ui-accordion-content-active"); - } - } - } - - this.element.addClass("ui-accordion ui-widget ui-helper-reset"); - - // in lack of child-selectors in CSS we need to mark top-LIs in a UL-accordion for some IE-fix - if (this.element[0].nodeName == "UL") { - this.element.children("li").addClass("ui-accordion-li-fix"); - } - - this.headers = this.element.find(o.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all") - .bind("mouseenter.accordion", function(){ $(this).addClass('ui-state-hover'); }) - .bind("mouseleave.accordion", function(){ $(this).removeClass('ui-state-hover'); }) - .bind("focus.accordion", function(){ $(this).addClass('ui-state-focus'); }) - .bind("blur.accordion", function(){ $(this).removeClass('ui-state-focus'); }); - - this.headers - .next() - .addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom"); - - this.active = this._findActive(this.active || o.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"); - this.active.next().addClass('ui-accordion-content-active'); - - //Append icon elements - $("").addClass("ui-icon " + o.icons.header).prependTo(this.headers); - this.active.find(".ui-icon").toggleClass(o.icons.header).toggleClass(o.icons.headerSelected); - - // IE7-/Win - Extra vertical space in lists fixed - if ($.browser.msie) { - this.element.find('a').css('zoom', '1'); - } - - this.resize(); - - //ARIA - this.element.attr('role','tablist'); - - this.headers - .attr('role','tab') - .bind('keydown', function(event) { return self._keydown(event); }) - .next() - .attr('role','tabpanel'); - - this.headers - .not(this.active || "") - .attr('aria-expanded','false') - .attr("tabIndex", "-1") - .next() - .hide(); - - // make sure at least one header is in the tab order - if (!this.active.length) { - this.headers.eq(0).attr('tabIndex','0'); - } else { - this.active - .attr('aria-expanded','true') - .attr('tabIndex', '0'); - } - - // only need links in taborder for Safari - if (!$.browser.safari) - this.headers.find('a').attr('tabIndex','-1'); - - if (o.event) { - this.headers.bind((o.event) + ".accordion", function(event) { return self._clickHandler.call(self, event, this); }); - } - - }, - - destroy: function() { - var o = this.options; - - this.element - .removeClass("ui-accordion ui-widget ui-helper-reset") - .removeAttr("role") - .unbind('.accordion') - .removeData('accordion'); - - this.headers - .unbind(".accordion") - .removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top") - .removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex"); - - this.headers.find("a").removeAttr("tabindex"); - this.headers.children(".ui-icon").remove(); - var contents = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active"); - if (o.autoHeight || o.fillHeight) { - contents.css("height", ""); - } - }, - - _setData: function(key, value) { - if(key == 'alwaysOpen') { key = 'collapsible'; value = !value; } - $.widget.prototype._setData.apply(this, arguments); - }, - - _keydown: function(event) { - - var o = this.options, keyCode = $.ui.keyCode; - - if (o.disabled || event.altKey || event.ctrlKey) - return; - - var length = this.headers.length; - var currentIndex = this.headers.index(event.target); - var toFocus = false; - - switch(event.keyCode) { - case keyCode.RIGHT: - case keyCode.DOWN: - toFocus = this.headers[(currentIndex + 1) % length]; - break; - case keyCode.LEFT: - case keyCode.UP: - toFocus = this.headers[(currentIndex - 1 + length) % length]; - break; - case keyCode.SPACE: - case keyCode.ENTER: - return this._clickHandler({ target: event.target }, event.target); - } - - if (toFocus) { - $(event.target).attr('tabIndex','-1'); - $(toFocus).attr('tabIndex','0'); - toFocus.focus(); - return false; - } - - return true; - - }, - - resize: function() { - - var o = this.options, maxHeight; - - if (o.fillSpace) { - - if($.browser.msie) { var defOverflow = this.element.parent().css('overflow'); this.element.parent().css('overflow', 'hidden'); } - maxHeight = this.element.parent().height(); - if($.browser.msie) { this.element.parent().css('overflow', defOverflow); } - - this.headers.each(function() { - maxHeight -= $(this).outerHeight(); - }); - - var maxPadding = 0; - this.headers.next().each(function() { - maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height()); - }).height(Math.max(0, maxHeight - maxPadding)) - .css('overflow', 'auto'); - - } else if ( o.autoHeight ) { - maxHeight = 0; - this.headers.next().each(function() { - maxHeight = Math.max(maxHeight, $(this).outerHeight()); - }).height(maxHeight); - } - - }, - - activate: function(index) { - // call clickHandler with custom event - var active = this._findActive(index)[0]; - this._clickHandler({ target: active }, active); - }, - - _findActive: function(selector) { - return selector - ? typeof selector == "number" - ? this.headers.filter(":eq(" + selector + ")") - : this.headers.not(this.headers.not(selector)) - : selector === false - ? $([]) - : this.headers.filter(":eq(0)"); - }, - - _clickHandler: function(event, target) { - - var o = this.options; - if (o.disabled) return false; - - // called only when using activate(false) to close all parts programmatically - if (!event.target && o.collapsible) { - this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all") - .find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header); - this.active.next().addClass('ui-accordion-content-active'); - var toHide = this.active.next(), - data = { - options: o, - newHeader: $([]), - oldHeader: o.active, - newContent: $([]), - oldContent: toHide - }, - toShow = (this.active = $([])); - this._toggle(toShow, toHide, data); - return false; - } - - // get the click target - var clicked = $(event.currentTarget || target); - var clickedIsActive = clicked[0] == this.active[0]; - - // if animations are still active, or the active header is the target, ignore click - if (this.running || (!o.collapsible && clickedIsActive)) { - return false; - } - - // switch classes - this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all") - .find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header); - this.active.next().addClass('ui-accordion-content-active'); - if (!clickedIsActive) { - clicked.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top") - .find(".ui-icon").removeClass(o.icons.header).addClass(o.icons.headerSelected); - clicked.next().addClass('ui-accordion-content-active'); - } - - // find elements to show and hide - var toShow = clicked.next(), - toHide = this.active.next(), - data = { - options: o, - newHeader: clickedIsActive && o.collapsible ? $([]) : clicked, - oldHeader: this.active, - newContent: clickedIsActive && o.collapsible ? $([]) : toShow.find('> *'), - oldContent: toHide.find('> *') - }, - down = this.headers.index( this.active[0] ) > this.headers.index( clicked[0] ); - - this.active = clickedIsActive ? $([]) : clicked; - this._toggle(toShow, toHide, data, clickedIsActive, down); - - return false; - - }, - - _toggle: function(toShow, toHide, data, clickedIsActive, down) { - - var o = this.options, self = this; - - this.toShow = toShow; - this.toHide = toHide; - this.data = data; - - var complete = function() { if(!self) return; return self._completed.apply(self, arguments); }; - - // trigger changestart event - this._trigger("changestart", null, this.data); - - // count elements to animate - this.running = toHide.size() === 0 ? toShow.size() : toHide.size(); - - if (o.animated) { - - var animOptions = {}; - - if ( o.collapsible && clickedIsActive ) { - animOptions = { - toShow: $([]), - toHide: toHide, - complete: complete, - down: down, - autoHeight: o.autoHeight || o.fillSpace - }; - } else { - animOptions = { - toShow: toShow, - toHide: toHide, - complete: complete, - down: down, - autoHeight: o.autoHeight || o.fillSpace - }; - } - - if (!o.proxied) { - o.proxied = o.animated; - } - - if (!o.proxiedDuration) { - o.proxiedDuration = o.duration; - } - - o.animated = $.isFunction(o.proxied) ? - o.proxied(animOptions) : o.proxied; - - o.duration = $.isFunction(o.proxiedDuration) ? - o.proxiedDuration(animOptions) : o.proxiedDuration; - - var animations = $.ui.accordion.animations, - duration = o.duration, - easing = o.animated; - - if (!animations[easing]) { - animations[easing] = function(options) { - this.slide(options, { - easing: easing, - duration: duration || 700 - }); - }; - } - - animations[easing](animOptions); - - } else { - - if (o.collapsible && clickedIsActive) { - toShow.toggle(); - } else { - toHide.hide(); - toShow.show(); - } - - complete(true); - - } - - toHide.prev().attr('aria-expanded','false').attr("tabIndex", "-1").blur(); - toShow.prev().attr('aria-expanded','true').attr("tabIndex", "0").focus(); - - }, - - _completed: function(cancel) { - - var o = this.options; - - this.running = cancel ? 0 : --this.running; - if (this.running) return; - - if (o.clearStyle) { - this.toShow.add(this.toHide).css({ - height: "", - overflow: "" - }); - } - - this._trigger('change', null, this.data); - } - -}); - - -$.extend($.ui.accordion, { - version: "1.7", - defaults: { - active: null, - alwaysOpen: true, //deprecated, use collapsible - animated: 'slide', - autoHeight: true, - clearStyle: false, - collapsible: false, - event: "click", - fillSpace: false, - header: "> 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(); - } - }, - animations: { - slide: function(options, additions) { - options = $.extend({ - easing: "swing", - duration: 300 - }, options, additions); - if ( !options.toHide.size() ) { - options.toShow.animate({height: "show"}, options); - return; - } - if ( !options.toShow.size() ) { - options.toHide.animate({height: "hide"}, options); - return; - } - var overflow = options.toShow.css('overflow'), - percentDone, - showProps = {}, - hideProps = {}, - fxAttrs = [ "height", "paddingTop", "paddingBottom" ], - originalWidth; - // fix width before calculating height of hidden element - var s = options.toShow; - originalWidth = s[0].style.width; - s.width( parseInt(s.parent().width(),10) - parseInt(s.css("paddingLeft"),10) - parseInt(s.css("paddingRight"),10) - parseInt(s.css("borderLeftWidth"),10) - parseInt(s.css("borderRightWidth"),10) ); - - $.each(fxAttrs, function(i, prop) { - hideProps[prop] = 'hide'; - - var parts = ('' + $.css(options.toShow[0], prop)).match(/^([\d+-.]+)(.*)$/); - showProps[prop] = { - value: parts[1], - unit: parts[2] || 'px' - }; - }); - options.toShow.css({ height: 0, overflow: 'hidden' }).show(); - options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate(hideProps,{ - step: function(now, settings) { - // only calculate the percent when animating height - // IE gets very inconsistent results when animating elements - // with small values, which is common for padding - if (settings.prop == 'height') { - percentDone = (settings.now - settings.start) / (settings.end - settings.start); - } - - options.toShow[0].style[settings.prop] = - (percentDone * showProps[settings.prop].value) + showProps[settings.prop].unit; - }, - duration: options.duration, - easing: options.easing, - complete: function() { - if ( !options.autoHeight ) { - options.toShow.css("height", ""); - } - options.toShow.css("width", originalWidth); - options.toShow.css({overflow: overflow}); - options.complete(); - } - }); - }, - bounceslide: function(options) { - this.slide(options, { - easing: options.down ? "easeOutBounce" : "swing", - duration: options.down ? 1000 : 200 - }); - }, - easeslide: function(options) { - this.slide(options, { - easing: "easeinout", - duration: 700 - }); - } - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.js deleted file mode 100644 index 89300d9..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.js +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.min.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.min.js deleted file mode 100644 index 01679c4..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.core.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* - * Compressed by JSA(www.xidea.org) - */ -eval(function(E,I,A,D,J,K,L,H){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)K[C(D--)]=I[--A];function N(A){return K[A]==L[A]?A:K[A]}if(''.replace(/^/,String)){var M=E.match(J),B=M[0],F=E.split(J),G=0;if(E.indexOf(F[0]))F=[''].concat(F);do{H[A++]=F[G++];H[A++]=N(B)}while(B=M[G]);H[A++]=F[G]||'';return H.join('')}return E.replace(J,N)}('Bb.L||(u(B){N F=B.M.l,C=B.q.mozilla&&(parseFloat(B.q.BY)G)c T;A[C]=H;J=(A[C]>G);A[C]=G;c J},BI:u(I,A,J){c(I>A)&&(I<(A+J))},isOver:u(D,E,I,C,A,J){c B.L.BI(D,I,A)&&B.L.BI(E,C,J)},keyCode:{BACKSPACE:CG,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:Bc,SPACE:32,TAB:Bw,UP:38}};K(C){N E=B.R,B_=B.M.BQ,A="http://www.w3.org/2005/07/BF",I=/^Z-/,D=/^Bm:/;B.R=u(B,F,J){N C=J!==BD;c(F=="role"?(C?E.V(Q,B,F,"Bm:"+J):(E.b(Q,3)||"").s(D,"")):(I.S(F)?(C?B.setAttributeNS(A,F.s(I,"BF:"),J):E.V(Q,B,F.s(I,"BF:"))):E.b(Q,3)))};B.M.BQ=u(J){c(I.S(J)?Q.Y(u(){Q.removeAttributeNS(A,J.s(I,""))}):B_.V(Q,J))}}B.M.k({l:u(){B("*",Q).BE(Q).Y(u(){B(Q).triggerHandler("l")});c F.b(Q,3)},enableSelection:u(){c Q.R("5","off").O("B0","").j("BU.L")},disableSelection:u(){c Q.R("5","Bf").O("B0","none").U("BU.L",u(){c a})},scrollParent:u(){N J;K((B.q.X&&(/(static|CB)/).S(Q.O("z")))||(/BW/).S(Q.O("z")))J=Q.r().n(u(){c(/(CB|BW|B5)/).S(B.d(Q,"z",H))&&(/(Bq|By)/).S(B.d(Q,"w",H)+B.d(Q,"w-Bv",H)+B.d(Q,"w-Bz",H))}).B9(G);else J=Q.r().n(u(){c(/(Bq|By)/).S(B.d(Q,"w",H)+B.d(Q,"w-Bv",H)+B.d(Q,"w-Bz",H))}).B9(G);c(/B5/).S(Q.O("z"))||!J.e?B(1):J}});B.k(B.expr[":"],{W:u(A,I,J){c!!B.W(A,J[CE])},B3:u(J){N I=J.nodeName.toLowerCase(),A=B.R(J,"BV");c(/input|select|textarea|Bu|object/.S(I)?!J.v:"CC"==I||"B4"==I?J.href||!BB(A):!BB(A))&&!B(J)["B4"==I?"r":"closest"](":Bp").e},tabbable:u(J){N I=B.R(J,"BV");c(BB(I)||I>=G)&&B(J).is(":B3")}});u J(J,E,D,I){u A(I){N A=B[J][E][I]||[];c(g A=="h"?A.BM(/,?\\CD+/):A)}N C=A("getter");K(I.e==H&&g I[G]=="h")C=C.concat(A("B7"));c(B.inArray(D,C)!=-H)}B.i=u(C,A){N I=C.BM(".")[G];C=C.BM(".")[H];B.M[C]=u(F){N E=(g F=="h"),D=Array.2.slice.V(3,H);K(E&&F.substring(G,H)=="I")c Q;K(E&&J(I,C,F,D)){N A=B.W(Q[G],C);c(A?A[F].b(A,D):BD)}c Q.Y(u(){N J=B.W(Q,C);(!J&&!E&&B.W(Q,C,new B[I][C](Q,F)).B8());(J&&E&&B.B1(J[F])&&J[F].b(J,D))})};B[I]=B[I]||{};B[I][C]=u(J,D){N A=Q;Q.BK=I;Q.4=C;Q.BP=B[I][C].eventPrefix||C;Q.BG=I+"-"+C;Q.p=B.k({},B.i.0,B[I][C].0,B.Bo&&B.Bo.get(J)[C],D);Q.o=B(J).U("setData."+C,u(C,I,B){K(C.f==J)c A.x(I,B)}).U("getData."+C,u(B,I){K(B.f==J)c A.BN(I)}).U("l",u(){c A.Bh()})};B[I][C].2=B.k({},B.i.2,A);B[I][C].B7="Bi"};B.i.2={B8:u(){},Bh:u(){Q.o.removeData(Q.4).Be(Q.BG+"-v"+" "+Q.BK+"-Ba-v").BQ("Z-v")},Bi:u(J,I){N C=J,A=Q;K(g J=="h"){K(I===BD)c Q.BN(J);C={};C[J]=I}B.Y(C,u(J,I){A.x(J,I)})},BN:u(J){c Q.p[J]},x:u(J,I){Q.p[J]=I;K(J=="v")Q.o[I?"addClass":"Be"](Q.BG+"-v"+" "+Q.BK+"-Ba-v").R("Z-v",I)},enable:u(){Q.x("v",a)},disable:u(){Q.x("v",T)},_trigger:u(A,E,D){N I=Q.p[A],F=(A==Q.BP?A:Q.BP+A);E=B.Event(E);E.type=F;K(E.7)P(N J=B.Bl.Bk.e,C;J;){C=B.Bl.Bk[--J];E[C]=E.7[C]}Q.o.trigger(E,D);c!(B.B1(I)&&I.V(Q.o[G],E,D)===a||E.isDefaultPrevented())}};B.i.0={v:a};B.L.Bt={_mouseInit:u(){N J=Q;Q.o.U("mousedown."+Q.4,u(I){c J.BX(I)}).U("click."+Q.4,u(I){K(J._){J._=a;I.stopImmediatePropagation();c a}});K(B.q.X){Q.BT=Q.o.R("5");Q.o.R("5","Bf")}Q.started=a},_mouseDestroy:u(){Q.o.j("."+Q.4);(B.q.X&&Q.o.R("5",Q.BT))},BX:u(C){C.7=C.7||{};K(C.7.B$)c;(Q.6&&Q.y(C));Q.9=C;N A=Q,I=(C.which==H),J=(g Q.p.m=="h"?B(C.f).r().BE(C.f).n(Q.p.m).e:a);K(!I||J||!Q.Bs(C))c T;Q.8=!Q.p.BH;K(!Q.8)Q._mouseDelayTimer=setTimeout(u(){A.8=T},Q.p.BH);K(Q.BR(C)&&Q.BC(C)){Q.6=(Q.BO(C)!==a);K(!Q.6){C.BS();c T}}Q.$=u(J){c A.Bx(J)};Q.BA=u(J){c A.y(J)};B(1).U("BZ."+Q.4,Q.$).U("CA."+Q.4,Q.BA);(B.q.safari||C.BS());C.7.B$=T;c T},Bx:u(J){K(B.q.X&&!J.Bu)c Q.y(J);K(Q.6){Q.BL(J);c J.BS()}K(Q.BR(J)&&Q.BC(J)){Q.6=(Q.BO(Q.9,J)!==a);(Q.6?Q.BL(J):Q.y(J))}c!Q.6},y:u(J){B(1).j("BZ."+Q.4,Q.$).j("CA."+Q.4,Q.BA);K(Q.6){Q.6=a;Q._=(J.f==Q.9.f);Q.B6(J)}c a},BR:u(J){c(BJ.max(BJ.Bn(Q.9.Bj-J.Bj),BJ.Bn(Q.9.Bg-J.Bg))>=Q.p.Bd)},BC:u(J){c Q.8},BO:u(J){},BL:u(J){},B6:u(J){},Bs:u(J){c T}};B.L.Bt.0={m:null,Bd:H,BH:G}})(Bb)','0|1|_|$|if|ui|fn|var|css|for|this|attr|test|true|bind|call|data|msie|each|aria|false|apply|return|curCSS|length|target|typeof|string|widget|unbind|extend|remove|cancel|filter|element|options|browser|parents|replace|plugins|function|disabled|overflow|_setData|_mouseUp|position|defaults|document|prototype|arguments|widgetName|unselectable|_mouseStarted|originalEvent|mouseDelayMet|_mouseDownEvent|_preventClickEvent|_mouseMoveDelegate|_mouseUpDelegate|isNaN|_mouseDelayMet|undefined|add|aaa|widgetBaseClass|delay|isOverAxis|Math|namespace|_mouseDrag|split|_getData|_mouseStart|widgetEventPrefix|removeAttr|_mouseDistanceMet|preventDefault|_mouseUnselectable|selectstart|tabindex|absolute|_mouseDown|version|mousemove|state|jQuery|16|distance|removeClass|on|pageY|destroy|option|pageX|props|event|wairole|abs|metadata|hidden|auto|contains|_mouseCapture|mouse|button|y|9|_mouseMove|scroll|x|MozUserSelect|isFunction|compareDocumentPosition|focusable|area|fixed|_mouseStop|getterSetter|_init|eq|G|mouseHandled|mouseup|relative|a|s|3|7|8'.split('|'),129,134,/[\w\$]+/g,{},{},[])) \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.js deleted file mode 100644 index 514cf0d..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.js +++ /dev/null @@ -1,1626 +0,0 @@ -/* - * jQuery UI Datepicker 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * ui.core.js - */ - -(function($) { // hide the namespace - -$.extend($.ui, { datepicker: { version: "1.7" } }); - -var PROP_NAME = 'datepicker'; - -/* Date picker manager. - Use the singleton instance of this class, $.datepicker, to interact with the date picker. - Settings for (groups of) date pickers are maintained in an instance object, - allowing multiple different settings on the same page. */ - -function Datepicker() { - this.debug = false; // Change this to true to start debugging - this._curInst = null; // The current instance in use - this._keyEvent = false; // If the last event was a key event - this._disabledInputs = []; // List of date picker inputs that have been disabled - this._datepickerShowing = false; // True if the popup picker is showing , false if not - this._inDialog = false; // True if showing within a "dialog", false if not - this._mainDivId = 'ui-datepicker-div'; // The ID of the main datepicker division - this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class - this._appendClass = 'ui-datepicker-append'; // The name of the append marker class - this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class - this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class - this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class - this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class - this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class - this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class - this.regional = []; // Available regional settings, indexed by language code - this.regional[''] = { // Default regional settings - closeText: 'Done', // Display text for close link - prevText: 'Prev', // Display text for previous month link - nextText: 'Next', // Display text for next month link - currentText: 'Today', // Display text for current month link - monthNames: ['January','February','March','April','May','June', - 'July','August','September','October','November','December'], // Names of months for drop-down and formatting - monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting - dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting - dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting - dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday - dateFormat: 'mm/dd/yy', // See format options on parseDate - firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ... - isRTL: false // True if right-to-left language, false if left-to-right - }; - this._defaults = { // Global defaults for all the date picker instances - showOn: 'focus', // 'focus' for popup on focus, - // 'button' for trigger button, or 'both' for either - showAnim: 'show', // Name of jQuery animation for popup - showOptions: {}, // Options for enhanced animations - defaultDate: null, // Used when field is blank: actual date, - // +/-number for offset from today, null for today - appendText: '', // Display text following the input box, e.g. showing the format - buttonText: '...', // Text for trigger button - buttonImage: '', // URL for trigger button image - buttonImageOnly: false, // True if the image appears alone, false if it appears on a button - hideIfNoPrevNext: false, // True to hide next/previous month links - // if not applicable, false to just disable them - navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links - gotoCurrent: false, // True if today link goes back to current selection instead - changeMonth: false, // True if month can be selected directly, false if only prev/next - changeYear: false, // True if year can be selected directly, false if only prev/next - showMonthAfterYear: false, // True if the year select precedes month, false for month then year - yearRange: '-10:+10', // Range of years to display in drop-down, - // either relative to current year (-nn:+nn) or absolute (nnnn:nnnn) - showOtherMonths: false, // True to show dates in other months, false to leave blank - calculateWeek: this.iso8601Week, // How to calculate the week of the year, - // takes a Date and returns the number of the week for it - shortYearCutoff: '+10', // Short year values < this are in the current century, - // > this are in the previous century, - // string value starting with '+' for current year + value - minDate: null, // The earliest selectable date, or null for no limit - maxDate: null, // The latest selectable date, or null for no limit - duration: 'normal', // Duration of display/closure - beforeShowDay: null, // Function that takes a date and returns an array with - // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '', - // [2] = cell title (optional), e.g. $.datepicker.noWeekends - beforeShow: null, // Function that takes an input field and - // returns a set of custom settings for the date picker - onSelect: null, // Define a callback function when a date is selected - onChangeMonthYear: null, // Define a callback function when the month or year is changed - onClose: null, // Define a callback function when the datepicker is closed - numberOfMonths: 1, // Number of months to show at a time - showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0) - stepMonths: 1, // Number of months to step back/forward - stepBigMonths: 12, // Number of months to step back/forward for the big links - altField: '', // Selector for an alternate field to store selected dates into - altFormat: '', // The date format to use for the alternate field - constrainInput: true, // The input is constrained by the current date format - showButtonPanel: false // True to show button panel, false to not show it - }; - $.extend(this._defaults, this.regional['']); - this.dpDiv = $('
    '); -} - -$.extend(Datepicker.prototype, { - /* Class name added to elements to indicate already configured with a date picker. */ - markerClassName: 'hasDatepicker', - - /* Debug logging (if enabled). */ - log: function () { - if (this.debug) - console.log.apply('', arguments); - }, - - /* Override the default settings for all instances of the date picker. - @param settings object - the new settings to use as defaults (anonymous object) - @return the manager object */ - setDefaults: function(settings) { - extendRemove(this._defaults, settings || {}); - return this; - }, - - /* Attach the date picker to a jQuery selection. - @param target element - the target input field or division or span - @param settings object - the new settings to use for this date picker instance (anonymous) */ - _attachDatepicker: function(target, settings) { - // check for settings on the control itself - in namespace 'date:' - var inlineSettings = null; - for (var attrName in this._defaults) { - var attrValue = target.getAttribute('date:' + attrName); - if (attrValue) { - inlineSettings = inlineSettings || {}; - try { - inlineSettings[attrName] = eval(attrValue); - } catch (err) { - inlineSettings[attrName] = attrValue; - } - } - } - var nodeName = target.nodeName.toLowerCase(); - var inline = (nodeName == 'div' || nodeName == 'span'); - if (!target.id) - target.id = 'dp' + (++this.uuid); - var inst = this._newInst($(target), inline); - inst.settings = $.extend({}, settings || {}, inlineSettings || {}); - if (nodeName == 'input') { - this._connectDatepicker(target, inst); - } else if (inline) { - this._inlineDatepicker(target, inst); - } - }, - - /* Create a new instance object. */ - _newInst: function(target, inline) { - var id = target[0].id.replace(/([:\[\]\.])/g, '\\\\$1'); // escape jQuery meta chars - return {id: id, input: target, // associated target - selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection - drawMonth: 0, drawYear: 0, // month being drawn - inline: inline, // is datepicker inline or not - dpDiv: (!inline ? this.dpDiv : // presentation div - $('
    '))}; - }, - - /* Attach the date picker to an input field. */ - _connectDatepicker: function(target, inst) { - var input = $(target); - if (input.hasClass(this.markerClassName)) - return; - var appendText = this._get(inst, 'appendText'); - var isRTL = this._get(inst, 'isRTL'); - if (appendText) - input[isRTL ? 'before' : 'after']('' + appendText + ''); - var showOn = this._get(inst, 'showOn'); - if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field - input.focus(this._showDatepicker); - if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked - var buttonText = this._get(inst, 'buttonText'); - var buttonImage = this._get(inst, 'buttonImage'); - var trigger = $(this._get(inst, 'buttonImageOnly') ? - $('').addClass(this._triggerClass). - attr({ src: buttonImage, alt: buttonText, title: buttonText }) : - $('').addClass(this._triggerClass). - html(buttonImage == '' ? buttonText : $('').attr( - { src:buttonImage, alt:buttonText, title:buttonText }))); - input[isRTL ? 'before' : 'after'](trigger); - trigger.click(function() { - if ($.datepicker._datepickerShowing && $.datepicker._lastInput == target) - $.datepicker._hideDatepicker(); - else - $.datepicker._showDatepicker(target); - return false; - }); - } - input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress). - bind("setData.datepicker", function(event, key, value) { - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key) { - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - }, - - /* Attach an inline date picker to a div. */ - _inlineDatepicker: function(target, inst) { - var divSpan = $(target); - if (divSpan.hasClass(this.markerClassName)) - return; - divSpan.addClass(this.markerClassName).append(inst.dpDiv). - bind("setData.datepicker", function(event, key, value){ - inst.settings[key] = value; - }).bind("getData.datepicker", function(event, key){ - return this._get(inst, key); - }); - $.data(target, PROP_NAME, inst); - this._setDate(inst, this._getDefaultDate(inst)); - this._updateDatepicker(inst); - this._updateAlternate(inst); - }, - - /* Pop-up the date picker in a "dialog" box. - @param input element - ignored - @param dateText string - the initial date to display (in the current format) - @param onSelect function - the function(dateText) to call when a date is selected - @param settings object - update the dialog date picker instance's settings (anonymous object) - @param pos int[2] - coordinates for the dialog's position within the screen or - event - with x/y coordinates or - leave empty for default (screen centre) - @return the manager object */ - _dialogDatepicker: function(input, dateText, onSelect, settings, pos) { - var inst = this._dialogInst; // internal instance - if (!inst) { - var id = 'dp' + (++this.uuid); - this._dialogInput = $(''); - this._dialogInput.keydown(this._doKeyDown); - $('body').append(this._dialogInput); - inst = this._dialogInst = this._newInst(this._dialogInput, false); - inst.settings = {}; - $.data(this._dialogInput[0], PROP_NAME, inst); - } - extendRemove(inst.settings, settings || {}); - this._dialogInput.val(dateText); - - this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null); - if (!this._pos) { - var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; - var browserHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; - var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft; - var scrollY = document.documentElement.scrollTop || document.body.scrollTop; - this._pos = // should use actual width/height below - [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY]; - } - - // move input on screen for focus, but hidden behind dialog - this._dialogInput.css('left', this._pos[0] + 'px').css('top', this._pos[1] + 'px'); - inst.settings.onSelect = onSelect; - this._inDialog = true; - this.dpDiv.addClass(this._dialogClass); - this._showDatepicker(this._dialogInput[0]); - if ($.blockUI) - $.blockUI(this.dpDiv); - $.data(this._dialogInput[0], PROP_NAME, inst); - return this; - }, - - /* Detach a datepicker from its control. - @param target element - the target input field or division or span */ - _destroyDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - $.removeData(target, PROP_NAME); - if (nodeName == 'input') { - $target.siblings('.' + this._appendClass).remove().end(). - siblings('.' + this._triggerClass).remove().end(). - removeClass(this.markerClassName). - unbind('focus', this._showDatepicker). - unbind('keydown', this._doKeyDown). - unbind('keypress', this._doKeyPress); - } else if (nodeName == 'div' || nodeName == 'span') - $target.removeClass(this.markerClassName).empty(); - }, - - /* Enable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _enableDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = false; - $target.siblings('button.' + this._triggerClass). - each(function() { this.disabled = false; }).end(). - siblings('img.' + this._triggerClass). - css({opacity: '1.0', cursor: ''}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().removeClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - }, - - /* Disable the date picker to a jQuery selection. - @param target element - the target input field or division or span */ - _disableDatepicker: function(target) { - var $target = $(target); - if (!$target.hasClass(this.markerClassName)) { - return; - } - var nodeName = target.nodeName.toLowerCase(); - if (nodeName == 'input') { - target.disabled = true; - $target.siblings('button.' + this._triggerClass). - each(function() { this.disabled = true; }).end(). - siblings('img.' + this._triggerClass). - css({opacity: '0.5', cursor: 'default'}); - } - else if (nodeName == 'div' || nodeName == 'span') { - var inline = $target.children('.' + this._inlineClass); - inline.children().addClass('ui-state-disabled'); - } - this._disabledInputs = $.map(this._disabledInputs, - function(value) { return (value == target ? null : value); }); // delete entry - this._disabledInputs[this._disabledInputs.length] = target; - }, - - /* Is the first field in a jQuery collection disabled as a datepicker? - @param target element - the target input field or division or span - @return boolean - true if disabled, false if enabled */ - _isDisabledDatepicker: function(target) { - if (!target) { - return false; - } - for (var i = 0; i < this._disabledInputs.length; i++) { - if (this._disabledInputs[i] == target) - return true; - } - return false; - }, - - /* Retrieve the instance data for the target control. - @param target element - the target input field or division or span - @return object - the associated instance data - @throws error if a jQuery problem getting data */ - _getInst: function(target) { - try { - return $.data(target, PROP_NAME); - } - catch (err) { - throw 'Missing instance data for this datepicker'; - } - }, - - /* Update the settings for a date picker attached to an input field or division. - @param target element - the target input field or division or span - @param name object - the new settings to update or - string - the name of the setting to change or - @param value any - the new value for the setting (omit if above is an object) */ - _optionDatepicker: function(target, name, value) { - var settings = name || {}; - if (typeof name == 'string') { - settings = {}; - settings[name] = value; - } - var inst = this._getInst(target); - if (inst) { - if (this._curInst == inst) { - this._hideDatepicker(null); - } - extendRemove(inst.settings, settings); - var date = new Date(); - extendRemove(inst, {rangeStart: null, // start of range - endDay: null, endMonth: null, endYear: null, // end of range - selectedDay: date.getDate(), selectedMonth: date.getMonth(), - selectedYear: date.getFullYear(), // starting point - currentDay: date.getDate(), currentMonth: date.getMonth(), - currentYear: date.getFullYear(), // current selection - drawMonth: date.getMonth(), drawYear: date.getFullYear()}); // month being drawn - this._updateDatepicker(inst); - } - }, - - // change method deprecated - _changeDatepicker: function(target, name, value) { - this._optionDatepicker(target, name, value); - }, - - /* Redraw the date picker attached to an input field or division. - @param target element - the target input field or division or span */ - _refreshDatepicker: function(target) { - var inst = this._getInst(target); - if (inst) { - this._updateDatepicker(inst); - } - }, - - /* Set the dates for a jQuery selection. - @param target element - the target input field or division or span - @param date Date - the new date - @param endDate Date - the new end date for a range (optional) */ - _setDateDatepicker: function(target, date, endDate) { - var inst = this._getInst(target); - if (inst) { - this._setDate(inst, date, endDate); - this._updateDatepicker(inst); - this._updateAlternate(inst); - } - }, - - /* Get the date(s) for the first entry in a jQuery selection. - @param target element - the target input field or division or span - @return Date - the current date or - Date[2] - the current dates for a range */ - _getDateDatepicker: function(target) { - var inst = this._getInst(target); - if (inst && !inst.inline) - this._setDateFromField(inst); - return (inst ? this._getDate(inst) : null); - }, - - /* Handle keystrokes. */ - _doKeyDown: function(event) { - var inst = $.datepicker._getInst(event.target); - var handled = true; - var isRTL = inst.dpDiv.is('.ui-datepicker-rtl'); - inst._keyEvent = true; - if ($.datepicker._datepickerShowing) - switch (event.keyCode) { - case 9: $.datepicker._hideDatepicker(null, ''); - break; // hide on tab out - case 13: var sel = $('td.' + $.datepicker._dayOverClass + - ', td.' + $.datepicker._currentClass, inst.dpDiv); - if (sel[0]) - $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]); - else - $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - return false; // don't submit the form - break; // select the value on enter - case 27: $.datepicker._hideDatepicker(null, $.datepicker._get(inst, 'duration')); - break; // hide on escape - case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // previous month/year on page up/+ ctrl - case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - break; // next month/year on page down/+ ctrl - case 35: if (event.ctrlKey || event.metaKey) $.datepicker._clearDate(event.target); - handled = event.ctrlKey || event.metaKey; - break; // clear on ctrl or command +end - case 36: if (event.ctrlKey || event.metaKey) $.datepicker._gotoToday(event.target); - handled = event.ctrlKey || event.metaKey; - break; // current on ctrl or command +home - case 37: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D'); - handled = event.ctrlKey || event.metaKey; - // -1 day on ctrl or command +left - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - -$.datepicker._get(inst, 'stepBigMonths') : - -$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +left on Mac - break; - case 38: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, -7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // -1 week on ctrl or command +up - case 39: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D'); - handled = event.ctrlKey || event.metaKey; - // +1 day on ctrl or command +right - if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ? - +$.datepicker._get(inst, 'stepBigMonths') : - +$.datepicker._get(inst, 'stepMonths')), 'M'); - // next month/year on alt +right - break; - case 40: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, +7, 'D'); - handled = event.ctrlKey || event.metaKey; - break; // +1 week on ctrl or command +down - default: handled = false; - } - else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home - $.datepicker._showDatepicker(this); - else { - handled = false; - } - if (handled) { - event.preventDefault(); - event.stopPropagation(); - } - }, - - /* Filter entered characters - based on date format. */ - _doKeyPress: function(event) { - var inst = $.datepicker._getInst(event.target); - if ($.datepicker._get(inst, 'constrainInput')) { - var chars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat')); - var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode); - return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1); - } - }, - - /* Pop-up the date picker for a given input field. - @param input element - the input field attached to the date picker or - event - if triggered by focus */ - _showDatepicker: function(input) { - input = input.target || input; - if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger - input = $('input', input.parentNode)[0]; - if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput == input) // already here - return; - var inst = $.datepicker._getInst(input); - var beforeShow = $.datepicker._get(inst, 'beforeShow'); - extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); - $.datepicker._hideDatepicker(null, ''); - $.datepicker._lastInput = input; - $.datepicker._setDateFromField(inst); - if ($.datepicker._inDialog) // hide cursor - input.value = ''; - if (!$.datepicker._pos) { // position below input - $.datepicker._pos = $.datepicker._findPos(input); - $.datepicker._pos[1] += input.offsetHeight; // add the height - } - var isFixed = false; - $(input).parents().each(function() { - isFixed |= $(this).css('position') == 'fixed'; - return !isFixed; - }); - if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled - $.datepicker._pos[0] -= document.documentElement.scrollLeft; - $.datepicker._pos[1] -= document.documentElement.scrollTop; - } - var offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]}; - $.datepicker._pos = null; - inst.rangeStart = null; - // determine sizing offscreen - inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'}); - $.datepicker._updateDatepicker(inst); - // fix width for dynamic number of date pickers - // and adjust position before showing - offset = $.datepicker._checkOffset(inst, offset, isFixed); - inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ? - 'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none', - left: offset.left + 'px', top: offset.top + 'px'}); - if (!inst.inline) { - var showAnim = $.datepicker._get(inst, 'showAnim') || 'show'; - var duration = $.datepicker._get(inst, 'duration'); - var postProcess = function() { - $.datepicker._datepickerShowing = true; - if ($.browser.msie && parseInt($.browser.version,10) < 7) // fix IE < 7 select problems - $('iframe.ui-datepicker-cover').css({width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}); - }; - if ($.effects && $.effects[showAnim]) - inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess); - else - inst.dpDiv[showAnim](duration, postProcess); - if (duration == '') - postProcess(); - if (inst.input[0].type != 'hidden') - inst.input[0].focus(); - $.datepicker._curInst = inst; - } - }, - - /* Generate the date picker content. */ - _updateDatepicker: function(inst) { - var dims = {width: inst.dpDiv.width() + 4, - height: inst.dpDiv.height() + 4}; - var self = this; - inst.dpDiv.empty().append(this._generateHTML(inst)) - .find('iframe.ui-datepicker-cover'). - css({width: dims.width, height: dims.height}) - .end() - .find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a') - .bind('mouseout', function(){ - $(this).removeClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover'); - }) - .bind('mouseover', function(){ - if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) { - $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); - $(this).addClass('ui-state-hover'); - if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover'); - if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover'); - } - }) - .end() - .find('.' + this._dayOverClass + ' a') - .trigger('mouseover') - .end(); - var numMonths = this._getNumberOfMonths(inst); - var cols = numMonths[1]; - var width = 17; - if (cols > 1) { - inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em'); - } else { - inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); - } - inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + - 'Class']('ui-datepicker-multi'); - inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') + - 'Class']('ui-datepicker-rtl'); - if (inst.input && inst.input[0].type != 'hidden' && inst == $.datepicker._curInst) - $(inst.input[0]).focus(); - }, - - /* Check positioning to remain on screen. */ - _checkOffset: function(inst, offset, isFixed) { - var dpWidth = inst.dpDiv.outerWidth(); - var dpHeight = inst.dpDiv.outerHeight(); - var inputWidth = inst.input ? inst.input.outerWidth() : 0; - var inputHeight = inst.input ? inst.input.outerHeight() : 0; - var viewWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) + $(document).scrollLeft(); - var viewHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight) + $(document).scrollTop(); - - offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0); - offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0; - offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0; - - // now check if datepicker is showing outside window viewport - move to a better place if so. - offset.left -= (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth) : 0; - offset.top -= (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ? Math.abs(offset.top + dpHeight + inputHeight*2 - viewHeight) : 0; - - return offset; - }, - - /* Find an object's position on the screen. */ - _findPos: function(obj) { - while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) { - obj = obj.nextSibling; - } - var position = $(obj).offset(); - return [position.left, position.top]; - }, - - /* Hide the date picker from view. - @param input element - the input field attached to the date picker - @param duration string - the duration over which to close the date picker */ - _hideDatepicker: function(input, duration) { - var inst = this._curInst; - if (!inst || (input && inst != $.data(input, PROP_NAME))) - return; - if (inst.stayOpen) - this._selectDate('#' + inst.id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - inst.stayOpen = false; - if (this._datepickerShowing) { - duration = (duration != null ? duration : this._get(inst, 'duration')); - var showAnim = this._get(inst, 'showAnim'); - var postProcess = function() { - $.datepicker._tidyDialog(inst); - }; - if (duration != '' && $.effects && $.effects[showAnim]) - inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), - duration, postProcess); - else - inst.dpDiv[(duration == '' ? 'hide' : (showAnim == 'slideDown' ? 'slideUp' : - (showAnim == 'fadeIn' ? 'fadeOut' : 'hide')))](duration, postProcess); - if (duration == '') - this._tidyDialog(inst); - var onClose = this._get(inst, 'onClose'); - if (onClose) - onClose.apply((inst.input ? inst.input[0] : null), - [(inst.input ? inst.input.val() : ''), inst]); // trigger custom callback - this._datepickerShowing = false; - this._lastInput = null; - if (this._inDialog) { - this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' }); - if ($.blockUI) { - $.unblockUI(); - $('body').append(this.dpDiv); - } - } - this._inDialog = false; - } - this._curInst = null; - }, - - /* Tidy up after a dialog display. */ - _tidyDialog: function(inst) { - inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar'); - }, - - /* Close date picker if clicked elsewhere. */ - _checkExternalClick: function(event) { - if (!$.datepicker._curInst) - return; - var $target = $(event.target); - if (($target.parents('#' + $.datepicker._mainDivId).length == 0) && - !$target.hasClass($.datepicker.markerClassName) && - !$target.hasClass($.datepicker._triggerClass) && - $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI)) - $.datepicker._hideDatepicker(null, ''); - }, - - /* Adjust one of the date sub-fields. */ - _adjustDate: function(id, offset, period) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._isDisabledDatepicker(target[0])) { - return; - } - this._adjustInstDate(inst, offset + - (period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning - period); - this._updateDatepicker(inst); - }, - - /* Action for current link. */ - _gotoToday: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (this._get(inst, 'gotoCurrent') && inst.currentDay) { - inst.selectedDay = inst.currentDay; - inst.drawMonth = inst.selectedMonth = inst.currentMonth; - inst.drawYear = inst.selectedYear = inst.currentYear; - } - else { - var date = new Date(); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - } - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Action for selecting a new month/year. */ - _selectMonthYear: function(id, select, period) { - var target = $(id); - var inst = this._getInst(target[0]); - inst._selectingMonthYear = false; - inst['selected' + (period == 'M' ? 'Month' : 'Year')] = - inst['draw' + (period == 'M' ? 'Month' : 'Year')] = - parseInt(select.options[select.selectedIndex].value,10); - this._notifyChange(inst); - this._adjustDate(target); - }, - - /* Restore input focus after not changing month/year. */ - _clickMonthYear: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - if (inst.input && inst._selectingMonthYear && !$.browser.msie) - inst.input[0].focus(); - inst._selectingMonthYear = !inst._selectingMonthYear; - }, - - /* Action for selecting a day. */ - _selectDay: function(id, month, year, td) { - var target = $(id); - if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) { - return; - } - var inst = this._getInst(target[0]); - inst.selectedDay = inst.currentDay = $('a', td).html(); - inst.selectedMonth = inst.currentMonth = month; - inst.selectedYear = inst.currentYear = year; - if (inst.stayOpen) { - inst.endDay = inst.endMonth = inst.endYear = null; - } - this._selectDate(id, this._formatDate(inst, - inst.currentDay, inst.currentMonth, inst.currentYear)); - if (inst.stayOpen) { - inst.rangeStart = this._daylightSavingAdjust( - new Date(inst.currentYear, inst.currentMonth, inst.currentDay)); - this._updateDatepicker(inst); - } - }, - - /* Erase the input field and hide the date picker. */ - _clearDate: function(id) { - var target = $(id); - var inst = this._getInst(target[0]); - inst.stayOpen = false; - inst.endDay = inst.endMonth = inst.endYear = inst.rangeStart = null; - this._selectDate(target, ''); - }, - - /* Update the input field with the selected date. */ - _selectDate: function(id, dateStr) { - var target = $(id); - var inst = this._getInst(target[0]); - dateStr = (dateStr != null ? dateStr : this._formatDate(inst)); - if (inst.input) - inst.input.val(dateStr); - this._updateAlternate(inst); - var onSelect = this._get(inst, 'onSelect'); - if (onSelect) - onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback - else if (inst.input) - inst.input.trigger('change'); // fire the change event - if (inst.inline) - this._updateDatepicker(inst); - else if (!inst.stayOpen) { - this._hideDatepicker(null, this._get(inst, 'duration')); - this._lastInput = inst.input[0]; - if (typeof(inst.input[0]) != 'object') - inst.input[0].focus(); // restore focus - this._lastInput = null; - } - }, - - /* Update any alternate field to synchronise with the main field. */ - _updateAlternate: function(inst) { - var altField = this._get(inst, 'altField'); - if (altField) { // update alternate field too - var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat'); - var date = this._getDate(inst); - dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst)); - $(altField).each(function() { $(this).val(dateStr); }); - } - }, - - /* Set as beforeShowDay function to prevent selection of weekends. - @param date Date - the date to customise - @return [boolean, string] - is this date selectable?, what is its CSS class? */ - noWeekends: function(date) { - var day = date.getDay(); - return [(day > 0 && day < 6), '']; - }, - - /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition. - @param date Date - the date to get the week for - @return number - the number of the week within the year that contains this date */ - iso8601Week: function(date) { - var checkDate = new Date(date.getFullYear(), date.getMonth(), date.getDate()); - var firstMon = new Date(checkDate.getFullYear(), 1 - 1, 4); // First week always contains 4 Jan - var firstDay = firstMon.getDay() || 7; // Day of week: Mon = 1, ..., Sun = 7 - firstMon.setDate(firstMon.getDate() + 1 - firstDay); // Preceding Monday - if (firstDay < 4 && checkDate < firstMon) { // Adjust first three days in year if necessary - checkDate.setDate(checkDate.getDate() - 3); // Generate for previous year - return $.datepicker.iso8601Week(checkDate); - } else if (checkDate > new Date(checkDate.getFullYear(), 12 - 1, 28)) { // Check last three days in year - firstDay = new Date(checkDate.getFullYear() + 1, 1 - 1, 4).getDay() || 7; - if (firstDay > 4 && (checkDate.getDay() || 7) < firstDay - 3) { // Adjust if necessary - return 1; - } - } - return Math.floor(((checkDate - firstMon) / 86400000) / 7) + 1; // Weeks to given date - }, - - /* Parse a string value into a date object. - See formatDate below for the possible formats. - - @param format string - the expected format of the date - @param value string - the date in the above format - @param settings Object - attributes include: - shortYearCutoff number - the cutoff year for determining the century (optional) - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return Date - the extracted date value or null if value is blank */ - parseDate: function (format, value, settings) { - if (format == null || value == null) - throw 'Invalid arguments'; - value = (typeof value == 'object' ? value.toString() : value + ''); - if (value == '') - return null; - var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - var year = -1; - var month = -1; - var day = -1; - var doy = -1; - var literal = false; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Extract a number from the string value - var getNumber = function(match) { - lookAhead(match); - var origSize = (match == '@' ? 14 : (match == 'y' ? 4 : (match == 'o' ? 3 : 2))); - var size = origSize; - var num = 0; - while (size > 0 && iValue < value.length && - value.charAt(iValue) >= '0' && value.charAt(iValue) <= '9') { - num = num * 10 + parseInt(value.charAt(iValue++),10); - size--; - } - if (size == origSize) - throw 'Missing number at position ' + iValue; - return num; - }; - // Extract a name from the string value and convert to an index - var getName = function(match, shortNames, longNames) { - var names = (lookAhead(match) ? longNames : shortNames); - var size = 0; - for (var j = 0; j < names.length; j++) - size = Math.max(size, names[j].length); - var name = ''; - var iInit = iValue; - while (size > 0 && iValue < value.length) { - name += value.charAt(iValue++); - for (var i = 0; i < names.length; i++) - if (name == names[i]) - return i + 1; - size--; - } - throw 'Unknown name at position ' + iInit; - }; - // Confirm that a literal character matches the string value - var checkLiteral = function() { - if (value.charAt(iValue) != format.charAt(iFormat)) - throw 'Unexpected literal at position ' + iValue; - iValue++; - }; - var iValue = 0; - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - checkLiteral(); - else - switch (format.charAt(iFormat)) { - case 'd': - day = getNumber('d'); - break; - case 'D': - getName('D', dayNamesShort, dayNames); - break; - case 'o': - doy = getNumber('o'); - break; - case 'm': - month = getNumber('m'); - break; - case 'M': - month = getName('M', monthNamesShort, monthNames); - break; - case 'y': - year = getNumber('y'); - break; - case '@': - var date = new Date(getNumber('@')); - year = date.getFullYear(); - month = date.getMonth() + 1; - day = date.getDate(); - break; - case "'": - if (lookAhead("'")) - checkLiteral(); - else - literal = true; - break; - default: - checkLiteral(); - } - } - if (year == -1) - year = new Date().getFullYear(); - else if (year < 100) - year += new Date().getFullYear() - new Date().getFullYear() % 100 + - (year <= shortYearCutoff ? 0 : -100); - if (doy > -1) { - month = 1; - day = doy; - do { - var dim = this._getDaysInMonth(year, month - 1); - if (day <= dim) - break; - month++; - day -= dim; - } while (true); - } - var date = this._daylightSavingAdjust(new Date(year, month - 1, day)); - if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day) - throw 'Invalid date'; // E.g. 31/02/* - return date; - }, - - /* Standard date formats. */ - ATOM: 'yy-mm-dd', // RFC 3339 (ISO 8601) - 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', // RFC 822 - TIMESTAMP: '@', - W3C: 'yy-mm-dd', // ISO 8601 - - /* Format a date object into a string value. - The format can be combinations of the following: - d - day of month (no leading zero) - dd - day of month (two digit) - o - day of year (no leading zeros) - oo - day of year (three digit) - D - day name short - DD - day name long - m - month of year (no leading zero) - mm - month of year (two digit) - M - month name short - MM - month name long - y - year (two digit) - yy - year (four digit) - @ - Unix timestamp (ms since 01/01/1970) - '...' - literal text - '' - single quote - - @param format string - the desired format of the date - @param date Date - the date value to format - @param settings Object - attributes include: - dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) - dayNames string[7] - names of the days from Sunday (optional) - monthNamesShort string[12] - abbreviated names of the months (optional) - monthNames string[12] - names of the months (optional) - @return string - the date in the above format */ - formatDate: function (format, date, settings) { - if (!date) - return ''; - var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort; - var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames; - var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort; - var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames; - // Check whether a format character is doubled - var lookAhead = function(match) { - var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match); - if (matches) - iFormat++; - return matches; - }; - // Format a number, with leading zero if necessary - var formatNumber = function(match, value, len) { - var num = '' + value; - if (lookAhead(match)) - while (num.length < len) - num = '0' + num; - return num; - }; - // Format a name, short or long as requested - var formatName = function(match, value, shortNames, longNames) { - return (lookAhead(match) ? longNames[value] : shortNames[value]); - }; - var output = ''; - var literal = false; - if (date) - for (var iFormat = 0; iFormat < format.length; iFormat++) { - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - output += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': - output += formatNumber('d', date.getDate(), 2); - break; - case 'D': - output += formatName('D', date.getDay(), dayNamesShort, dayNames); - break; - case 'o': - var doy = date.getDate(); - for (var m = date.getMonth() - 1; m >= 0; m--) - doy += this._getDaysInMonth(date.getFullYear(), m); - output += formatNumber('o', doy, 3); - break; - case 'm': - output += formatNumber('m', date.getMonth() + 1, 2); - break; - case 'M': - output += formatName('M', date.getMonth(), monthNamesShort, monthNames); - break; - case 'y': - output += (lookAhead('y') ? date.getFullYear() : - (date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100); - break; - case '@': - output += date.getTime(); - break; - case "'": - if (lookAhead("'")) - output += "'"; - else - literal = true; - break; - default: - output += format.charAt(iFormat); - } - } - return output; - }, - - /* Extract all possible characters from the date format. */ - _possibleChars: function (format) { - var chars = ''; - var literal = false; - for (var iFormat = 0; iFormat < format.length; iFormat++) - if (literal) - if (format.charAt(iFormat) == "'" && !lookAhead("'")) - literal = false; - else - chars += format.charAt(iFormat); - else - switch (format.charAt(iFormat)) { - case 'd': case 'm': case 'y': case '@': - chars += '0123456789'; - break; - case 'D': case 'M': - return null; // Accept anything - case "'": - if (lookAhead("'")) - chars += "'"; - else - literal = true; - break; - default: - chars += format.charAt(iFormat); - } - return chars; - }, - - /* Get a setting value, defaulting if necessary. */ - _get: function(inst, name) { - return inst.settings[name] !== undefined ? - inst.settings[name] : this._defaults[name]; - }, - - /* Parse existing date and initialise date picker. */ - _setDateFromField: function(inst) { - var dateFormat = this._get(inst, 'dateFormat'); - var dates = inst.input ? inst.input.val() : null; - inst.endDay = inst.endMonth = inst.endYear = null; - var date = defaultDate = this._getDefaultDate(inst); - var settings = this._getFormatConfig(inst); - try { - date = this.parseDate(dateFormat, dates, settings) || defaultDate; - } catch (event) { - this.log(event); - date = defaultDate; - } - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - inst.currentDay = (dates ? date.getDate() : 0); - inst.currentMonth = (dates ? date.getMonth() : 0); - inst.currentYear = (dates ? date.getFullYear() : 0); - this._adjustInstDate(inst); - }, - - /* Retrieve the default date shown on opening. */ - _getDefaultDate: function(inst) { - var date = this._determineDate(this._get(inst, 'defaultDate'), new Date()); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - return date; - }, - - /* A date may be specified as an exact value or a relative one. */ - _determineDate: function(date, defaultDate) { - var offsetNumeric = function(offset) { - var date = new Date(); - date.setDate(date.getDate() + offset); - return date; - }; - var offsetString = function(offset, getDaysInMonth) { - var date = new Date(); - var year = date.getFullYear(); - var month = date.getMonth(); - var day = date.getDate(); - var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g; - var matches = pattern.exec(offset); - while (matches) { - switch (matches[2] || 'd') { - case 'd' : case 'D' : - day += parseInt(matches[1],10); break; - case 'w' : case 'W' : - day += parseInt(matches[1],10) * 7; break; - case 'm' : case 'M' : - month += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - case 'y': case 'Y' : - year += parseInt(matches[1],10); - day = Math.min(day, getDaysInMonth(year, month)); - break; - } - matches = pattern.exec(offset); - } - return new Date(year, month, day); - }; - date = (date == null ? defaultDate : - (typeof date == 'string' ? offsetString(date, this._getDaysInMonth) : - (typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date))); - date = (date && date.toString() == 'Invalid Date' ? defaultDate : date); - if (date) { - date.setHours(0); - date.setMinutes(0); - date.setSeconds(0); - date.setMilliseconds(0); - } - return this._daylightSavingAdjust(date); - }, - - /* Handle switch to/from daylight saving. - Hours may be non-zero on daylight saving cut-over: - > 12 when midnight changeover, but then cannot generate - midnight datetime, so jump to 1AM, otherwise reset. - @param date (Date) the date to check - @return (Date) the corrected date */ - _daylightSavingAdjust: function(date) { - if (!date) return null; - date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0); - return date; - }, - - /* Set the date(s) directly. */ - _setDate: function(inst, date, endDate) { - var clear = !(date); - var origMonth = inst.selectedMonth; - var origYear = inst.selectedYear; - date = this._determineDate(date, new Date()); - inst.selectedDay = inst.currentDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear(); - if (origMonth != inst.selectedMonth || origYear != inst.selectedYear) - this._notifyChange(inst); - this._adjustInstDate(inst); - if (inst.input) { - inst.input.val(clear ? '' : this._formatDate(inst)); - } - }, - - /* Retrieve the date(s) directly. */ - _getDate: function(inst) { - var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null : - this._daylightSavingAdjust(new Date( - inst.currentYear, inst.currentMonth, inst.currentDay))); - return startDate; - }, - - /* Generate the HTML for the current state of the date picker. */ - _generateHTML: function(inst) { - var today = new Date(); - today = this._daylightSavingAdjust( - new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time - var isRTL = this._get(inst, 'isRTL'); - var showButtonPanel = this._get(inst, 'showButtonPanel'); - var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext'); - var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat'); - var numMonths = this._getNumberOfMonths(inst); - var showCurrentAtPos = this._get(inst, 'showCurrentAtPos'); - var stepMonths = this._get(inst, 'stepMonths'); - var stepBigMonths = this._get(inst, 'stepBigMonths'); - var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1); - var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) : - new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - var drawMonth = inst.drawMonth - showCurrentAtPos; - var drawYear = inst.drawYear; - if (drawMonth < 0) { - drawMonth += 12; - drawYear--; - } - if (maxDate) { - var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(), - maxDate.getMonth() - numMonths[1] + 1, maxDate.getDate())); - maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw); - while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) { - drawMonth--; - if (drawMonth < 0) { - drawMonth = 11; - drawYear--; - } - } - } - inst.drawMonth = drawMonth; - inst.drawYear = drawYear; - var prevText = this._get(inst, 'prevText'); - prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)), - this._getFormatConfig(inst))); - var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ? - '' + prevText + '' : - (hideIfNoPrevNext ? '' : '' + prevText + '')); - var nextText = this._get(inst, 'nextText'); - nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText, - this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)), - this._getFormatConfig(inst))); - var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ? - '' + nextText + '' : - (hideIfNoPrevNext ? '' : '' + nextText + '')); - var currentText = this._get(inst, 'currentText'); - var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today); - currentText = (!navigationAsDateFormat ? currentText : - this.formatDate(currentText, gotoDate, this._getFormatConfig(inst))); - var controls = (!inst.inline ? '' : ''); - var buttonPanel = (showButtonPanel) ? '
    ' + (isRTL ? controls : '') + - (this._isInRange(inst, gotoDate) ? '' : '') + (isRTL ? '' : controls) + '
    ' : ''; - var firstDay = parseInt(this._get(inst, 'firstDay'),10); - firstDay = (isNaN(firstDay) ? 0 : firstDay); - var dayNames = this._get(inst, 'dayNames'); - var dayNamesShort = this._get(inst, 'dayNamesShort'); - var dayNamesMin = this._get(inst, 'dayNamesMin'); - var monthNames = this._get(inst, 'monthNames'); - var monthNamesShort = this._get(inst, 'monthNamesShort'); - var beforeShowDay = this._get(inst, 'beforeShowDay'); - var showOtherMonths = this._get(inst, 'showOtherMonths'); - var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week; - var endDate = inst.endDay ? this._daylightSavingAdjust( - new Date(inst.endYear, inst.endMonth, inst.endDay)) : currentDate; - var defaultDate = this._getDefaultDate(inst); - var html = ''; - for (var row = 0; row < numMonths[0]; row++) { - var group = ''; - for (var col = 0; col < numMonths[1]; col++) { - var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay)); - var cornerClass = ' ui-corner-all'; - var calender = ''; - if (isMultiMonth) { - calender += '
    '; - } - calender += '
    ' + - (/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') + - (/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') + - this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers - '
    ' + - ''; - var thead = ''; - for (var dow = 0; dow < 7; dow++) { // days of the week - var day = (dow + firstDay) % 7; - thead += '= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' + - '' + dayNamesMin[day] + ''; - } - calender += thead + ''; - var daysInMonth = this._getDaysInMonth(drawYear, drawMonth); - if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth) - inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); - var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; - var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate - var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); - for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows - calender += ''; - var tbody = ''; - for (var dow = 0; dow < 7; dow++) { // create date picker days - var daySettings = (beforeShowDay ? - beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']); - var otherMonth = (printDate.getMonth() != drawMonth); - var unselectable = otherMonth || !daySettings[0] || - (minDate && printDate < minDate) || (maxDate && printDate > maxDate); - tbody += ''; // display for this month - printDate.setDate(printDate.getDate() + 1); - printDate = this._daylightSavingAdjust(printDate); - } - calender += tbody + ''; - } - drawMonth++; - if (drawMonth > 11) { - drawMonth = 0; - drawYear++; - } - calender += '
    ' + // actions - (otherMonth ? (showOtherMonths ? printDate.getDate() : ' ') : // display for other months - (unselectable ? '' + printDate.getDate() + '' : '' + printDate.getDate() + '')) + '
    ' + (isMultiMonth ? '
    ' + - ((numMonths[0] > 0 && col == numMonths[1]-1) ? '
    ' : '') : ''); - group += calender; - } - html += group; - } - html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ? - '' : ''); - inst._keyEvent = false; - return html; - }, - - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - selectedDate, secondary, monthNames, monthNamesShort) { - minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate); - var changeMonth = this._get(inst, 'changeMonth'); - var changeYear = this._get(inst, 'changeYear'); - var showMonthAfterYear = this._get(inst, 'showMonthAfterYear'); - var html = '
    '; - var monthHtml = ''; - // month selection - if (secondary || !changeMonth) - monthHtml += '' + monthNames[drawMonth] + ' '; - else { - var inMinYear = (minDate && minDate.getFullYear() == drawYear); - var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear); - monthHtml += ''; - } - if (!showMonthAfterYear) - html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? ' ' : ''); - // year selection - if (secondary || !changeYear) - html += '' + drawYear + ''; - else { - // determine range of years to display - var years = this._get(inst, 'yearRange').split(':'); - var year = 0; - var endYear = 0; - if (years.length != 2) { - year = drawYear - 10; - endYear = drawYear + 10; - } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { - year = drawYear + parseInt(years[0], 10); - endYear = drawYear + parseInt(years[1], 10); - } else { - year = parseInt(years[0], 10); - endYear = parseInt(years[1], 10); - } - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - html += ''; - } - if (showMonthAfterYear) - html += (secondary || changeMonth || changeYear ? ' ' : '') + monthHtml; - html += '
    '; // Close datepicker_header - return html; - }, - - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period == 'Y' ? offset : 0); - var month = inst.drawMonth + (period == 'M' ? offset : 0); - var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + - (period == 'D' ? offset : 0); - var date = this._daylightSavingAdjust(new Date(year, month, day)); - // ensure it is within the bounds set - var minDate = this._getMinMaxDate(inst, 'min', true); - var maxDate = this._getMinMaxDate(inst, 'max'); - date = (minDate && date < minDate ? minDate : date); - date = (maxDate && date > maxDate ? maxDate : date); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period == 'M' || period == 'Y') - this._notifyChange(inst); - }, - - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, 'onChangeMonthYear'); - if (onChange) - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); - }, - - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, 'numberOfMonths'); - return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths)); - }, - - /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */ - _getMinMaxDate: function(inst, minMax, checkRange) { - var date = this._determineDate(this._get(inst, minMax + 'Date'), null); - return (!checkRange || !inst.rangeStart ? date : - (!date || inst.rangeStart > date ? inst.rangeStart : date)); - }, - - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - new Date(year, month, 32).getDate(); - }, - - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, - - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst); - var date = this._daylightSavingAdjust(new Date( - curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1)); - if (offset < 0) - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); - return this._isInRange(inst, date); - }, - - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - // during range selection, use minimum of selected date and range start - var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust( - new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay))); - newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate); - var minDate = newMinDate || this._getMinMaxDate(inst, 'min'); - var maxDate = this._getMinMaxDate(inst, 'max'); - return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate)); - }, - - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, 'shortYearCutoff'); - shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'), - monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')}; - }, - - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day == 'object' ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst)); - } -}); - -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) - if (props[name] == null || props[name] == undefined) - target[name] = props[name]; - return target; -}; - -/* Determine whether an object is an array. */ -function isArray(a) { - return (a && (($.browser.safari && typeof a == 'object' && a.length) || - (a.constructor && a.constructor.toString().match(/\Array\(\)/)))); -}; - -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ - - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick). - find('body').append($.datepicker.dpDiv); - $.datepicker.initialized = true; - } - - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate')) - return $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this[0]].concat(otherArgs)); - return this.each(function() { - typeof options == 'string' ? - $.datepicker['_' + options + 'Datepicker']. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.7"; - -// Workaround for #4055 -// Add another global to avoid noConflict issues with inline event handlers -window.DP_jQuery = $; - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.min.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.min.js deleted file mode 100644 index 5e0a13b..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.datepicker.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* - * Compressed by JSA(www.xidea.org) - */ -eval(function(E,I,A,D,J,K,L,H){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)K[C(D--)]=I[--A];function N(A){return K[A]==L[A]?A:K[A]}if(''.replace(/^/,String)){var M=E.match(J),B=M[0],F=E.split(J),G=0;if(E.indexOf(F[0]))F=[''].concat(F);do{H[A++]=F[G++];H[A++]=N(B)}while(B=M[G]);H[A++]=F[G]||'';return H.join('')}return E.replace(J,N)}('(0(V){V.Ct(V.X,{5:{DL:"S.T"}});a B1="5";0 C6(){f.Fh=p;f.CP=h;f.DP=p;f.Bt=[];f.CG=p;f.CT=p;f.EM="X-5-c";f.Da="X-5-BV";f.EQ="X-5-CW";f.Bm="X-5-D0";f.Eg="X-5-dialog";f._disableClass="X-5-Bb";f.EK="X-5-unselectable";f.ER="X-5-E_-day";f.Dk="X-5-days-cell-over";f.EN=[];f.EN[""]={GT:"Done",FP:"Prev",Fq:"Next",Fi:"Today",B$:["January","February","March","April","F7","June","July","August","September","October","November","December"],Bw:["Jan","Feb","Mar","Apr","F7","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B_:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],B9:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],F9:["Su","Mo","Tu","We","Th","GX","Sa"],C_:"Ds/Ca/CE",GR:R,C0:p};f.4={Ev:"B0",EH:"D9",EA:{},Cr:h,E2:"",FC:"...",GS:"",E8:p,FZ:p,Fc:p,En:p,F6:p,GF:p,Fb:p,FG:"-Y:+Y",F_:p,Fg:f.DO,C$:"+Y",minDate:h,maxDate:h,Cn:"normal",Fm:h,Fk:h,Dx:h,GN:h,F8:h,E3:S,EJ:R,Ch:S,CV:C3,FW:"",FD:"",FT:m,GO:p};V.Ct(f.4,f.EN[""]);f.r=V("")}V.Ct(C6.F0,{BT:"hasDatepicker",ET:0(){W(f.Fh)console.ET.By("",EC)},setDefaults:0(V){CX(f.4,V||{});t f},F3:0(u,BM){a Ck=h;d(a DM Fu f.4){a Do=u.getAttribute("GK:"+DM);W(Do){Ck=Ck||{};El{Ck[DM]=eval(Do)}D_(err){Ck[DM]=Do}}}a Bn=u.Bn.DH(),BV=(Bn=="c"||Bn=="l");W(!u.Z)u.Z="Fr"+(++f.Ed);a De=f.EZ(V(u),BV);De.BM=V.Ct({},BM||{},Ck||{});W(Bn=="o")f.E4(u,De);k W(BV)f.GU(u,De)},EZ:0(A,U){a B=A[R].Z.replace(/([:\\[\\]\\.])/Dg,"\\\\\\\\$1");t{Z:B,o:A,8:R,_:R,9:R,BY:R,BW:R,BV:U,r:(!U?f.r:V(""))}},E4:0(F,C){a B=V(F);W(B.B7(f.BT))t;a D=f.g(C,"E2"),E=f.g(C,"C0");W(D)B[E?"F5":"Et"](""+D+"");a H=f.g(C,"Ev");W(H=="B0"||H=="Fw")B.B0(f.Ce);W(H=="BG"||H=="Fw"){a A=f.g(C,"FC"),G=f.g(C,"GS"),U=V(f.g(C,"E8")?V("
    ").BZ(f.Bm).Es({EF:G,FR:A,Br:A}):V("").BZ(f.Bm).Er(G==""?A:V("
    ").Es({EF:G,FR:A,Br:A})));B[E?"F5":"Et"](U);U.click(0(){W(V.5.CG&&V.5.Cb==F)V.5.Bd();k V.5.Ce(F);t p})}B.BZ(f.BT).ES(f.DR).Ey(f.Ep).Cg("GE.5",0(A,V,U){C.BM[V]=U}).Cg("FJ.5",0(U,V){t f.g(C,V)});V.CC(F,B1,C)},GU:0(B,U){a A=V(B);W(A.B7(f.BT))t;A.BZ(f.BT).CW(U.r).Cg("GE.5",0(B,V,A){U.BM[V]=A}).Cg("FJ.5",0(A,V){t f.g(U,V)});V.CC(B,B1,U);f.Ea(U,f.DJ(U));f.Bu(U);f.Dv(U)},_dialogDatepicker:0(B,I,F,U,E){a A=f.FF;W(!A){a J="Fr"+(++f.Ed);f.Bc=V("");f.Bc.ES(f.DR);V("Bi").CW(f.Bc);A=f.FF=f.EZ(f.Bc,p);A.BM={};V.CC(f.Bc[R],B1,A)}CX(A.BM,U||{});f.Bc.CI(I);f.BD=(E?(E.w?E:[E.pageX,E.pageY]):h);W(!f.BD){a D=DE.GQ||2.B4.Dr||2.Bi.Dr,H=DE.GG||2.B4.DU||2.Bi.DU,G=2.B4.DA||2.Bi.DA,C=2.B4.DD||2.Bi.DD;f.BD=[(D/BN)-CH+G,(H/BN)-150+C]}f.Bc.BS("n",f.BD[R]+"DZ").BS("e",f.BD[S]+"DZ");A.BM.Dx=F;f.CT=m;f.r.BZ(f.Eg);f.Ce(f.Bc[R]);W(V.C5)V.C5(f.r);V.CC(f.Bc[R],B1,A);t f},_destroyDatepicker:0(A){a B=V(A);W(!B.B7(f.BT))t;a U=A.Bn.DH();V.removeData(A,B1);W(U=="o")B.Cf("."+f.EQ).DV().Bv().Cf("."+f.Bm).DV().Bv().Bp(f.BT).DQ("B0",f.Ce).DQ("ES",f.DR).DQ("Ey",f.Ep);k W(U=="c"||U=="l")B.Bp(f.BT).Eu()},_enableDatepicker:0(B){a C=V(B);W(!C.B7(f.BT))t;a A=B.Bn.DH();W(A=="o"){B.Bb=p;C.Cf("BG."+f.Bm).C1(0(){f.Bb=p}).Bv().Cf("DT."+f.Bm).BS({Fo:"S.R",GL:""})}k W(A=="c"||A=="l"){a U=C.DW("."+f.Da);U.DW().Bp("X-BA-Bb")}f.Bt=V.FV(f.Bt,0(V){t(V==B?h:V)})},_disableDatepicker:0(B){a C=V(B);W(!C.B7(f.BT))t;a A=B.Bn.DH();W(A=="o"){B.Bb=m;C.Cf("BG."+f.Bm).C1(0(){f.Bb=m}).Bv().Cf("DT."+f.Bm).BS({Fo:"R.D$",GL:"Bf"})}k W(A=="c"||A=="l"){a U=C.DW("."+f.Da);U.DW().BZ("X-BA-Bb")}f.Bt=V.FV(f.Bt,0(V){t(V==B?h:V)});f.Bt[f.Bt.w]=B},C8:0(U){W(!U)t p;d(a V=R;V-S)}},Ce:0(B){B=B.u||B;W(B.Bn.DH()!="o")B=V("o",B.parentNode)[R];W(V.5.C8(B)||V.5.Cb==B)t;a A=V.5.3(B),E=V.5.g(A,"Fk");CX(A.BM,(E?E.By(B,[B,A]):{}));V.5.Bd(h,"");V.5.Cb=B;V.5.Ec(A);W(V.5.CT)B.Dd="";W(!V.5.BD){V.5.BD=V.5.GD(B);V.5.BD[S]+=B.offsetHeight}a C=p;V(B).Dz().C1(0(){C|=V(f).BS("B8")=="GP";t!C});W(C&&V.CB.opera){V.5.BD[R]-=2.B4.DA;V.5.BD[S]-=2.B4.DD}a D={n:V.5.BD[R],e:V.5.BD[S]};V.5.BD=h;A.BU=h;A.r.BS({B8:"DK",Fy:"block",e:"-1000px"});V.5.Bu(A);D=V.5.Fv(A,D,C);A.r.BS({B8:(V.5.CT&&V.C5?"static":(C?"GP":"DK")),Fy:"none",n:D.n+"DZ",e:D.e+"DZ"});W(!A.BV){a G=V.5.g(A,"EH")||"D9",F=V.5.g(A,"Cn"),U=0(){V.5.CG=m;W(V.CB.Ef&&BB(V.CB.DL,Y)S)B.r.BZ("X-5-C4-"+A).BS("Bx",(C*A)+"em");k B.r.Bp("X-5-C4-BN X-5-C4-C2 X-5-C4-Bg").Bx("");B.r[(U[R]!=S||U[S]!=S?"E9":"DV")+"Fd"]("X-5-C4");B.r[(f.g(B,"C0")?"E9":"DV")+"Fd"]("X-5-Fe");W(B.o&&B.o[R].CF!="DS"&&B==V.5.CP)V(B.o[R]).B0()},Fv:0(A,H,D){a B=A.r.Fs(),G=A.r.Fp(),E=A.o?A.o.Fs():R,C=A.o?A.o.Fp():R,F=(DE.GQ||2.B4.Dr||2.Bi.Dr)+V(2).DA(),U=(DE.GG||2.B4.DU||2.Bi.DU)+V(2).DD();H.n-=(f.g(A,"C0")?(B-E):R);H.n-=(D&&H.n==A.o.Ek().n)?V(2).DA():R;H.e-=(D&&H.e==(A.o.Ek().e+C))?V(2).DD():R;H.n-=(H.n+B>F&&F>B)?BR.Fz(H.n+B-F):R;H.e-=(H.e+G>U&&U>G)?BR.Fz(H.e+G+C*BN-U):R;t H},GD:0(U){CK(U&&(U.CF=="DS"||U.nodeType!=S))U=U.nextSibling;a A=V(U).Ek();t[A.n,A.e]},Bd:0(B,D){a A=f.CP;W(!A||(B&&A!=V.CC(B,B1)))t;W(A.CY)f.Db("#"+A.Z,f.Cy(A,A.6,A.BK,A.BH));A.CY=p;W(f.CG){D=(D!=h?D:f.g(A,"Cn"));a E=f.g(A,"EH"),U=0(){V.5.EB(A)};W(D!=""&&V.Dj&&V.Dj[E])A.r.D2(E,V.5.g(A,"EA"),D,U);k A.r[(D==""?"D2":(E=="slideDown"?"slideUp":(E=="fadeIn"?"fadeOut":"D2")))](D,U);W(D=="")f.EB(A);a C=f.g(A,"F8");W(C)C.By((A.o?A.o[R]:h),[(A.o?A.o.CI():""),A]);f.CG=p;f.Cb=h;W(f.CT){f.Bc.BS({B8:"DK",n:"R",e:"-FH"});W(V.C5){V.unblockUI();V("Bi").CW(f.r)}}f.CT=p}f.CP=h},EB:0(V){V.r.Bp(f.Eg).DQ(".X-5-Dl")},FK:0(U){W(!V.5.CP)t;a A=V(U.u);W((A.Dz("#"+V.5.EM).w==R)&&!A.B7(V.5.BT)&&!A.B7(V.5.Bm)&&V.5.CG&&!(V.5.CT&&V.C5))V.5.Bd(h,"")},BC:0(D,C,U){a B=V(D),A=f.3(B[R]);W(f.C8(B[R]))t;f.Dn(A,C+(U=="L"?f.g(A,"EJ"):R),U);f.Bu(A)},EU:0(C){a A=V(C),U=f.3(A[R]);W(f.g(U,"En")&&U.6){U.8=U.6;U.BY=U._=U.BK;U.BW=U.9=U.BH}k{a B=b j();U.8=B.x();U.BY=U._=B.1();U.BW=U.9=B.7()}f.C7(U);f.BC(A)},EE:0(C,D,U){a B=V(C),A=f.3(B[R]);A.Dh=p;A["DB"+(U=="L"?"FN":"GA")]=A["draw"+(U=="L"?"FN":"GA")]=BB(D.options[D.selectedIndex].Dd,Y);f.C7(A);f.BC(B)},EX:0(B){a A=V(B),U=f.3(A[R]);W(U.o&&U.Dh&&!V.CB.Ef)U.o[R].B0();U.Dh=!U.Dh},EI:0(E,A,C,U){a D=V(E);W(V(U).B7(f.EK)||f.C8(D[R]))t;a B=f.3(D[R]);B.8=B.6=V("P",U).Er();B._=B.BK=A;B.9=B.BH=C;W(B.CY)B.Co=B.Cu=B.Cw=h;f.Db(E,f.Cy(B,B.6,B.BK,B.BH));W(B.CY){B.BU=f.$(b j(B.BH,B.BK,B.6));f.Bu(B)}},Fx:0(B){a A=V(B),U=f.3(A[R]);U.CY=p;U.Co=U.Cu=U.Cw=U.BU=h;f.Db(A,"")},Db:0(D,C){a B=V(D),U=f.3(B[R]);C=(C!=h?C:f.Cy(U));W(U.o)U.o.CI(C);f.Dv(U);a A=f.g(U,"Dx");W(A)A.By((U.o?U.o[R]:h),[C,U]);k W(U.o)U.o.D0("change");W(U.BV)f.Bu(U);k W(!U.CY){f.Bd(h,f.g(U,"Cn"));f.Cb=U.o[R];W(BO(U.o[R])!="DI")U.o[R].B0();f.Cb=h}},Dv:0(U){a A=f.g(U,"FW");W(A){a C=f.g(U,"FD")||f.g(U,"C_"),B=f.Ei(U);FB=f.Ci(C,B,f.CN(U));V(A).C1(0(){V(f).CI(FB)})}},noWeekends:0(U){a V=U.Cc();t[(V>R&&Vb j(U.7(),C3-S,28)){B=b j(U.7()+S,S-S,Bg).Cc()||T;W(B>Bg&&(U.Cc()||T)R&&M="R"&&A.v(M)<="Cz"){V=V*Y+BB(A.v(M++),Y);B--}W(B==C)CZ"GC D3 EO B8 "+M;t V},K=0(V,C,G){a D=(F(V)?G:C),H=R;d(a E=R;ER&&M-S){V=S;B=BJ;do{a C=f.CO(N,V-S);W(B<=C)q;V++;B-=C}CK(m)}H=f.$(b j(N,V-S,B));W(H.7()!=N||H.1()+S!=V||H.x()!=B)CZ"Eh GK";t H},ATOM:"CE-Ds-Ca",COOKIE:"D, Ca L CE",ISO_8601:"CE-Ds-Ca",RFC_822:"D, Q L BE",RFC_850:"GW, Ca-L-BE",RFC_1036:"D, Q L BE",RFC_1123:"D, Q L CE",RFC_2822:"D, Q L CE",RSS:"D, Q L BE",TIMESTAMP:"@",W3C:"CE-Ds-Ca",Ci:0(L,F,V){W(!F)t"";a K=(V?V.B9:h)||f.4.B9,I=(V?V.B_:h)||f.4.B_,A=(V?V.Bw:h)||f.4.Bw,D=(V?V.B$:h)||f.4.B$,C=0(V){a U=(H+S=R;J--)BX+=f.CO(F.7(),J);U+=G("CA",BX,C2);q;i"Bh":U+=G("Bh",F.1()+S,BN);q;i"L":U+=E("L",F.1(),A,D);q;i"BE":U+=(C("BE")?F.7():(F.E5()%CHV?V:A);t A},Dp:0(U,B){a A=0(U){a V=b j();V.DF(V.x()+U);t V},V=0(F,C){a E=b j(),B=E.7(),V=E.1(),U=E.x(),D=/([+-]?[R-Cz]+)\\Be*(Q|D|Bs|CM|Bh|L|BE|CL)?/Dg,A=D.GM(F);CK(A){Cd(A[BN]||"Q"){i"Q":i"D":U+=BB(A[S],Y);q;i"Bs":i"CM":U+=BB(A[S],Y)*T;q;i"Bh":i"L":V+=BB(A[S],Y);U=BR.Bo(U,C(B,V));q;i"BE":i"CL":B+=BB(A[S],Y);U=BR.Bo(U,C(B,V));q}A=D.GM(F)}t b j(B,V,U)};U=(U==h?B:(BO U=="Cx"?V(U,f.CO):(BO U=="D3"?(F1(U)?B:A(U)):U)));U=(U&&U.EW()=="Eh j"?B:U);W(U){U.GI(R);U.setMinutes(R);U.setSeconds(R);U.setMilliseconds(R)}t f.$(U)},$:0(V){W(!V)t h;V.GI(V.GH()>C3?V.GH()+BN:R);t V},Ea:0(U,C,B){a A=!(C),D=U._,V=U.9;C=f.Dp(C,b j());U.8=U.6=C.x();U.BY=U._=U.BK=C.1();U.BW=U.9=U.BH=C.7();W(D!=U._||V!=U.9)f.C7(U);f.Dn(U);W(U.o)U.o.CI(A?"":f.Cy(U))},Ei:0(V){a U=(!V.BH||(V.o&&V.o.CI()=="")?h:f.$(b j(V.BH,V.BK,V.6)));t U},FS:0(N){a B6=b j();B6=f.$(b j(B6.7(),B6.1(),B6.x()));a D=f.g(N,"C0"),Bj=f.g(N,"GO"),Bs=f.g(N,"FZ"),A=f.g(N,"Fc"),Be=f.Dm(N),L=f.g(N,"EJ"),Bq=f.g(N,"Ch"),U=f.g(N,"CV"),H=(Be[R]!=S||Be[S]!=S),Cv=f.$((!N.6?b j(9999,Cz,Cz):b j(N.BH,N.BK,N.6))),CU=f.Bl(N,"Bo",m),B3=f.Bl(N,"Cj"),O=N.BY-L,J=N.BW;W(ODG){O--;W(O"+M+"

    ":(Bs?"":"

    "+M+"

    ")),B2=f.g(N,"Fq");B2=(!A?B2:f.Ci(B2,f.$(b j(J,O+Bq,S)),f.CN(N)));a D6=(f.Em(N,+S,J,O)?"

    "+B2+"

    ":(Bs?"":"

    "+B2+"

    ")),Cq=f.g(N,"Fi"),BX=(f.g(N,"En")&&N.6?Cv:B6);Cq=(!A?Cq:f.Ci(Cq,BX,f.CN(N)));a ED=(!N.BV?""+f.g(N,"GT")+"":""),CL=(Bj)?""+(D?ED:"")+(f.Eo(N,BX)?""+Cq+"":"")+(D?"":ED)+"":"",Bz=BB(f.g(N,"GR"),Y);Bz=(F1(Bz)?R:Bz);a I=f.g(N,"B_"),BE=f.g(N,"B9"),Fj=f.g(N,"F9"),Dg=f.g(N,"B$"),E=f.g(N,"Bw"),Bh=f.g(N,"Fm"),B=f.g(N,"F_"),GV=f.g(N,"Fg")||f.DO,D5=N.Co?f.$(b j(N.Cw,N.Cu,N.Co)):Cv,D7=f.DJ(N),C="";d(a Cl=R;Cl"}BL+=""+(/BP|n/.Ff(CQ)&&Cl==R?(D?D6:D1):"")+(/BP|D8/.Ff(CQ)&&Cl==R?(D?D1:D6):"")+f.FY(N,O,J,CU,B3,DY,Cl>R||F>R,Dg,E)+""+"";a Q="";d(a Bk=R;Bk=D$?" s=\\"X-5-E1-Bv\\"":"")+">"+""+Fj[BF]+""}BL+=Q+"";a Dy=f.CO(J,O);W(J==N.9&&O==N._)N.8=BR.Bo(N.8,Dy);a CA=(f.FU(J,O)-Bz+T)%T,FI=(H?Dq:BR.ceil((CA+Dy)/T)),G=f.$(b j(J,O,S-CA));d(a Ee=R;Ee";a Eb="";d(Bk=R;BkB3);Eb+="=D$?" X-5-E1-Bv":"")+(K?" X-5-other-EV":"")+((G.y()==DY.y()&&O==N._&&N.DP)||(D7.y()==G.y()&&D7.y()==DY.y())?" "+f.Dk:"")+(P?" "+f.EK+" X-BA-Bb":"")+(K&&!B?"":" "+CM[S]+(G.y()>=Cv.y()&&G.y()<=D5.y()?" "+f.ER:"")+(G.y()==B6.y()?" X-5-today":""))+"\\""+((!K||B)&&CM[BN]?" Br=\\""+CM[BN]+"\\"":"")+(P?"":" CS=\\"Ba.5.EI(\'#"+N.Z+"\',"+O+","+J+", f);t p;\\"")+">"+(K?(B?G.x():"&#Ej;"):(P?""+G.x()+"":"

    =Cv.y()&&G.y()<=D5.y()?" X-BA-active":"")+"\\" href=\\"#\\">"+G.x()+"

    "))+"
    ";G.DF(G.x()+S);G=f.$(G)}BL+=Eb+""}O++;W(O>FX){O=R;J++}BL+="
    "+(H?""+((Be[R]>R&&F==Be[S]-S)?"":""):"");BJ+=BL}C+=BJ}C+=CL+(V.CB.Ef&&BB(V.CB.DL,Y)
    ":"");N.DP=p;t C},FY:0(U,C,M,H,J,N,K,E,B){H=(U.BU&&H&&N",F="";W(K||!D)F+=""+E[C]+" ";k{a G=(H&&H.7()==M),BX=(J&&J.7()==M);F+="";d(a V=R;V=H.1())&&(!BX||V<=J.1()))F+=""+B[V]+"";F+=""}W(!Bj)A+=F+((K||D||BJ)&&(!(D&&BJ))?"&#Ej;":"");W(K||!BJ)A+=""+M+"";k{a BF=f.g(U,"FG").split(":"),L=R,I=R;W(BF.w!=BN){L=M-Y;I=M+Y}k W(BF[R].v(R)=="+"||BF[R].v(R)=="-"){L=M+BB(BF[R],Y);I=M+BB(BF[S],Y)}k{L=BB(BF[R],Y);I=BB(BF[S],Y)}L=(H?BR.Cj(L,H.7()):L);I=(J?BR.Bo(I,J.7()):I);A+="";d(;L<=I;L++)A+=""+L+"";A+=""}W(Bj)A+=(K||D||BJ?"&#Ej;":"")+F;A+="";t A},Dn:0(C,F,U){a D=C.BW+(U=="CL"?F:R),V=C.BY+(U=="L"?F:R),B=BR.Bo(C.8,f.CO(D,V))+(U=="D"?F:R),E=f.$(b j(D,V,B)),G=f.Bl(C,"Bo",m),A=f.Bl(C,"Cj");E=(G&&EA?A:E);C.8=E.x();C.BY=C._=E.1();C.BW=C.9=E.7();W(U=="L"||U=="CL")f.C7(C)},C7:0(V){a U=f.g(V,"GN");W(U)U.By((V.o?V.o[R]:h),[V.9,V._+S,V])},Dm:0(U){a V=f.g(U,"E3");t(V==h?[S,S]:(BO V=="D3"?[S,V]:V))},Bl:0(U,B,V){a A=f.Dp(f.g(U,B+"j"),h);t(!V||!U.BU?A:(!A||U.BU>A?U.BU:A))},CO:0(U,V){t Ez-b j(U,V,Ez).x()},FU:0(U,V){t b j(U,V,S).Cc()},Em:0(A,C,U,D){a V=f.Dm(A),B=f.$(b j(U,D+(C=C)&&(!V||B<=V))},CN:0(V){a U=f.g(V,"C$");U=(BO U!="Cx"?U:b j().7()%CH+BB(U,Y));t{C$:U,B9:f.g(V,"B9"),B_:f.g(V,"B_"),Bw:f.g(V,"Bw"),B$:f.g(V,"B$")}},Cy:0(A,U,V,B){W(!U){A.6=A.8;A.BK=A._;A.BH=A.9}a C=(U?(BO U=="DI"?U:f.$(b j(B,V,U))):f.$(b j(A.BH,A.BK,A.6)));t f.Ci(f.g(A,"C_"),C,f.CN(A))}});0 CX(A,U){V.Ct(A,U);d(a B Fu U)W(U[B]==h||U[B]==EY)A[B]=U[B];t A}0 isArray(U){t(U&&((V.CB.safari&&BO U=="DI"&&U.w)||(U.GB&&U.GB.EW().match(/\\Ft\\(\\)/))))}V.fn.5=0(A){W(!V.5.Eq){V(2).mousedown(V.5.FK).DC("Bi").CW(V.5.r);V.5.Eq=m}a U=Ft.F0.slice.call(EC,S);W(BO A=="Cx"&&(A=="isDisabled"||A=="x"))t V.5["U"+A+"C6"].By(V.5,[f[R]].F4(U));t f.C1(0(){BO A=="Cx"?V.5["U"+A+"C6"].By(V.5,[f].F4(U)):V.5.F3(f,A)})};V.5=b C6();V.5.Eq=p;V.5.Ed=b j().y();V.5.DL="S.T";DE.Ba=V})(jQuery)','M|N|O|S|a|d|0|1|7|_|$|if|ui|10|id|var|new|div|for|top|this|_get|null|case|Date|else|span|true|left|input|false|break|dpDiv|class|return|target|charAt|length|getDate|getTime|ctrlKey|function|getMonth|document|_getInst|_defaults|datepicker|currentDay|getFullYear|selectedDay|selectedYear|selectedMonth|_daylightSavingAdjust|state|parseInt|_adjustDate|_pos|y|Q|button|currentYear|metaKey|P|currentMonth|n|settings|2|typeof|all|corner|Math|css|markerClassName|rangeStart|inline|drawYear|L|drawMonth|addClass|DP_jQuery|disabled|_dialogInput|_hideDatepicker|s|default|4|m|body|R|T|_getMinMaxDate|_triggerClass|nodeName|min|removeClass|e|title|w|_disabledInputs|_updateDatepicker|end|monthNamesShort|width|apply|h|focus|PROP_NAME|x|j|documentElement|icon|u|hasClass|position|dayNamesShort|dayNames|monthNames|o|browser|data|hover|yy|type|_datepickerShowing|100|val|next|while|Y|W|_getFormatConfig|_getDaysInMonth|_curInst|c|prev|onclick|_inDialog|i|stepBigMonths|append|extendRemove|stayOpen|throw|dd|_lastInput|getDay|switch|_showDatepicker|siblings|bind|stepMonths|formatDate|max|inlineSettings|k|widget|duration|endDay|height|X|defaultDate|td|extend|endMonth|v|endYear|string|_formatDate|9|isRTL|each|3|12|multi|blockUI|Datepicker|_notifyChange|_isDisabledDatepicker|indexOf|dateFormat|shortYearCutoff|scrollLeft|selected|find|scrollTop|window|setDate|Z|toLowerCase|object|_getDefaultDate|absolute|version|attrName|option|iso8601Week|_keyEvent|unbind|_doKeyDown|hidden|img|clientHeight|remove|children|tr|p|px|_inlineClass|_selectDate|helper|value|inst|className|g|_selectingMonthYear|triangle|effects|_dayOverClass|calendar|_getNumberOfMonths|_adjustInstDate|attrValue|_determineDate|6|clientWidth|mm|iframe|select|_updateAlternate|circle|onSelect|V|parents|trigger|l|hide|number|keyCode|b|f|_0|right|show|catch|5|showOptions|_tidyDialog|arguments|r|_selectMonthYear|src|cover|showAnim|_selectDay|showCurrentAtPos|_unselectableClass|content|_mainDivId|regional|at|clearfix|_appendClass|_currentClass|keydown|log|_gotoToday|month|toString|_clickMonthYear|undefined|_newInst|_setDate|q|_setDateFromField|uuid|z|msie|_dialogClass|Invalid|_getDate|xa0|offset|try|_canAdjustMonth|gotoCurrent|_isInRange|_doKeyPress|initialized|html|attr|after|empty|showOn|_possibleChars|header|keypress|32|parseDate|week|appendText|numberOfMonths|_connectDatepicker|getYear|thead|priority|buttonImageOnly|add|current|year|mouseover|dateStr|buttonText|altFormat|charCode|_dialogInst|yearRange|100px|t|getData|_checkExternalClick|onchange|th|Month|originalEvent|prevText|group|alt|_generateHTML|constrainInput|_getFirstDayOfMonth|map|altField|11|_generateMonthYearHeader|hideIfNoPrevNext|altKey|showMonthAfterYear|navigationAsDateFormat|Class|rtl|test|calculateWeek|debug|currentText|$0|beforeShow|36|beforeShowDay|tbody|opacity|outerHeight|nextText|dp|outerWidth|Array|in|_checkOffset|both|_clearDate|display|abs|prototype|isNaN|_optionDatepicker|_attachDatepicker|concat|before|changeMonth|May|onClose|dayNamesMin|showOtherMonths|lookAhead|Year|constructor|Missing|_findPos|setData|changeYear|innerHeight|getHours|setHours|table|date|cursor|exec|onChangeMonthYear|showButtonPanel|fixed|innerWidth|firstDay|buttonImage|closeText|_inlineDatepicker|U|DD|Fr'.split('|'),397,407,/[\w\$]+/g,{},{},[])) \ No newline at end of file diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.dialog.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.dialog.js deleted file mode 100644 index 99d16f0..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.dialog.js +++ /dev/null @@ -1,650 +0,0 @@ -/* - * jQuery UI Dialog 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Dialog - * - * Depends: - * ui.core.js - * ui.draggable.js - * ui.resizable.js - */ -(function($) { - -var setDataSwitch = { - dragStart: "start.draggable", - drag: "drag.draggable", - dragStop: "stop.draggable", - maxHeight: "maxHeight.resizable", - minHeight: "minHeight.resizable", - maxWidth: "maxWidth.resizable", - minWidth: "minWidth.resizable", - resizeStart: "start.resizable", - resize: "drag.resizable", - resizeStop: "stop.resizable" - }, - - uiDialogClasses = - 'ui-dialog ' + - 'ui-widget ' + - 'ui-widget-content ' + - 'ui-corner-all '; - -$.widget("ui.dialog", { - - _init: function() { - this.originalTitle = this.element.attr('title'); - - var self = this, - options = this.options, - - title = options.title || this.originalTitle || ' ', - titleId = $.ui.dialog.getTitleId(this.element), - - uiDialog = (this.uiDialog = $('
    ')) - .appendTo(document.body) - .hide() - .addClass(uiDialogClasses + options.dialogClass) - .css({ - position: 'absolute', - overflow: 'hidden', - zIndex: options.zIndex - }) - // setting tabIndex makes the div focusable - // setting outline to 0 prevents a border on focus in Mozilla - .attr('tabIndex', -1).css('outline', 0).keydown(function(event) { - (options.closeOnEscape && event.keyCode - && event.keyCode == $.ui.keyCode.ESCAPE && self.close(event)); - }) - .attr({ - role: 'dialog', - 'aria-labelledby': titleId - }) - .mousedown(function(event) { - self.moveToTop(false, event); - }), - - uiDialogContent = this.element - .show() - .removeAttr('title') - .addClass( - 'ui-dialog-content ' + - 'ui-widget-content') - .appendTo(uiDialog), - - uiDialogTitlebar = (this.uiDialogTitlebar = $('
    ')) - .addClass( - 'ui-dialog-titlebar ' + - 'ui-widget-header ' + - 'ui-corner-all ' + - 'ui-helper-clearfix' - ) - .prependTo(uiDialog), - - uiDialogTitlebarClose = $('') - .addClass( - 'ui-dialog-titlebar-close ' + - 'ui-corner-all' - ) - .attr('role', 'button') - .hover( - function() { - uiDialogTitlebarClose.addClass('ui-state-hover'); - }, - function() { - uiDialogTitlebarClose.removeClass('ui-state-hover'); - } - ) - .focus(function() { - uiDialogTitlebarClose.addClass('ui-state-focus'); - }) - .blur(function() { - uiDialogTitlebarClose.removeClass('ui-state-focus'); - }) - .mousedown(function(ev) { - ev.stopPropagation(); - }) - .click(function(event) { - self.close(event); - return false; - }) - .appendTo(uiDialogTitlebar), - - uiDialogTitlebarCloseText = (this.uiDialogTitlebarCloseText = $('')) - .addClass( - 'ui-icon ' + - 'ui-icon-closethick' - ) - .text(options.closeText) - .appendTo(uiDialogTitlebarClose), - - uiDialogTitle = $('') - .addClass('ui-dialog-title') - .attr('id', titleId) - .html(title) - .prependTo(uiDialogTitlebar); - - uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection(); - - (options.draggable && $.fn.draggable && this._makeDraggable()); - (options.resizable && $.fn.resizable && this._makeResizable()); - - this._createButtons(options.buttons); - this._isOpen = false; - - (options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe()); - (options.autoOpen && this.open()); - - }, - - destroy: function() { - (this.overlay && this.overlay.destroy()); - this.uiDialog.hide(); - this.element - .unbind('.dialog') - .removeData('dialog') - .removeClass('ui-dialog-content ui-widget-content') - .hide().appendTo('body'); - this.uiDialog.remove(); - - (this.originalTitle && this.element.attr('title', this.originalTitle)); - }, - - close: function(event) { - var self = this; - - if (false === self._trigger('beforeclose', event)) { - return; - } - - (self.overlay && self.overlay.destroy()); - self.uiDialog.unbind('keypress.ui-dialog'); - - (self.options.hide - ? self.uiDialog.hide(self.options.hide, function() { - self._trigger('close', event); - }) - : self.uiDialog.hide() && self._trigger('close', event)); - - $.ui.dialog.overlay.resize(); - - self._isOpen = false; - }, - - isOpen: function() { - return this._isOpen; - }, - - // the force parameter allows us to move modal dialogs to their correct - // position on open - moveToTop: function(force, event) { - - if ((this.options.modal && !force) - || (!this.options.stack && !this.options.modal)) { - return this._trigger('focus', event); - } - - if (this.options.zIndex > $.ui.dialog.maxZ) { - $.ui.dialog.maxZ = this.options.zIndex; - } - (this.overlay && this.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = ++$.ui.dialog.maxZ)); - - //Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed. - // http://ui.jquery.com/bugs/ticket/3193 - var saveScroll = { scrollTop: this.element.attr('scrollTop'), scrollLeft: this.element.attr('scrollLeft') }; - this.uiDialog.css('z-index', ++$.ui.dialog.maxZ); - this.element.attr(saveScroll); - this._trigger('focus', event); - }, - - open: function() { - if (this._isOpen) { return; } - - var options = this.options, - uiDialog = this.uiDialog; - - this.overlay = options.modal ? new $.ui.dialog.overlay(this) : null; - (uiDialog.next().length && uiDialog.appendTo('body')); - this._size(); - this._position(options.position); - uiDialog.show(options.show); - this.moveToTop(true); - - // prevent tabbing out of modal dialogs - (options.modal && uiDialog.bind('keypress.ui-dialog', function(event) { - if (event.keyCode != $.ui.keyCode.TAB) { - return; - } - - var tabbables = $(':tabbable', this), - first = tabbables.filter(':first')[0], - last = tabbables.filter(':last')[0]; - - if (event.target == last && !event.shiftKey) { - setTimeout(function() { - first.focus(); - }, 1); - } else if (event.target == first && event.shiftKey) { - setTimeout(function() { - last.focus(); - }, 1); - } - })); - - // set focus to the first tabbable element in the content area or the first button - // if there are no tabbable elements, set focus on the dialog itself - $([]) - .add(uiDialog.find('.ui-dialog-content :tabbable:first')) - .add(uiDialog.find('.ui-dialog-buttonpane :tabbable:first')) - .add(uiDialog) - .filter(':first') - .focus(); - - this._trigger('open'); - this._isOpen = true; - }, - - _createButtons: function(buttons) { - var self = this, - hasButtons = false, - uiDialogButtonPane = $('
    ') - .addClass( - 'ui-dialog-buttonpane ' + - 'ui-widget-content ' + - 'ui-helper-clearfix' - ); - - // if we already have a button pane, remove it - this.uiDialog.find('.ui-dialog-buttonpane').remove(); - - (typeof buttons == 'object' && buttons !== null && - $.each(buttons, function() { return !(hasButtons = true); })); - if (hasButtons) { - $.each(buttons, function(name, fn) { - $('') - .addClass( - 'ui-state-default ' + - 'ui-corner-all' - ) - .text(name) - .click(function() { fn.apply(self.element[0], arguments); }) - .hover( - function() { - $(this).addClass('ui-state-hover'); - }, - function() { - $(this).removeClass('ui-state-hover'); - } - ) - .focus(function() { - $(this).addClass('ui-state-focus'); - }) - .blur(function() { - $(this).removeClass('ui-state-focus'); - }) - .appendTo(uiDialogButtonPane); - }); - uiDialogButtonPane.appendTo(this.uiDialog); - } - }, - - _makeDraggable: function() { - var self = this, - options = this.options, - heightBeforeDrag; - - this.uiDialog.draggable({ - cancel: '.ui-dialog-content', - handle: '.ui-dialog-titlebar', - containment: 'document', - start: function() { - heightBeforeDrag = options.height; - $(this).height($(this).height()).addClass("ui-dialog-dragging"); - (options.dragStart && options.dragStart.apply(self.element[0], arguments)); - }, - drag: function() { - (options.drag && options.drag.apply(self.element[0], arguments)); - }, - stop: function() { - $(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag); - (options.dragStop && options.dragStop.apply(self.element[0], arguments)); - $.ui.dialog.overlay.resize(); - } - }); - }, - - _makeResizable: function(handles) { - handles = (handles === undefined ? this.options.resizable : handles); - var self = this, - options = this.options, - resizeHandles = typeof handles == 'string' - ? handles - : 'n,e,s,w,se,sw,ne,nw'; - - this.uiDialog.resizable({ - cancel: '.ui-dialog-content', - alsoResize: this.element, - maxWidth: options.maxWidth, - maxHeight: options.maxHeight, - minWidth: options.minWidth, - minHeight: options.minHeight, - start: function() { - $(this).addClass("ui-dialog-resizing"); - (options.resizeStart && options.resizeStart.apply(self.element[0], arguments)); - }, - resize: function() { - (options.resize && options.resize.apply(self.element[0], arguments)); - }, - handles: resizeHandles, - stop: function() { - $(this).removeClass("ui-dialog-resizing"); - options.height = $(this).height(); - options.width = $(this).width(); - (options.resizeStop && options.resizeStop.apply(self.element[0], arguments)); - $.ui.dialog.overlay.resize(); - } - }) - .find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se'); - }, - - _position: function(pos) { - var wnd = $(window), doc = $(document), - pTop = doc.scrollTop(), pLeft = doc.scrollLeft(), - minTop = pTop; - - if ($.inArray(pos, ['center','top','right','bottom','left']) >= 0) { - pos = [ - pos == 'right' || pos == 'left' ? pos : 'center', - pos == 'top' || pos == 'bottom' ? pos : 'middle' - ]; - } - if (pos.constructor != Array) { - pos = ['center', 'middle']; - } - if (pos[0].constructor == Number) { - pLeft += pos[0]; - } else { - switch (pos[0]) { - case 'left': - pLeft += 0; - break; - case 'right': - pLeft += wnd.width() - this.uiDialog.outerWidth(); - break; - default: - case 'center': - pLeft += (wnd.width() - this.uiDialog.outerWidth()) / 2; - } - } - if (pos[1].constructor == Number) { - pTop += pos[1]; - } else { - switch (pos[1]) { - case 'top': - pTop += 0; - break; - case 'bottom': - pTop += wnd.height() - this.uiDialog.outerHeight(); - break; - default: - case 'middle': - pTop += (wnd.height() - this.uiDialog.outerHeight()) / 2; - } - } - - // prevent the dialog from being too high (make sure the titlebar - // is accessible) - pTop = Math.max(pTop, minTop); - this.uiDialog.css({top: pTop, left: pLeft}); - }, - - _setData: function(key, value){ - (setDataSwitch[key] && this.uiDialog.data(setDataSwitch[key], value)); - switch (key) { - case "buttons": - this._createButtons(value); - break; - case "closeText": - this.uiDialogTitlebarCloseText.text(value); - break; - case "dialogClass": - this.uiDialog - .removeClass(this.options.dialogClass) - .addClass(uiDialogClasses + value); - break; - case "draggable": - (value - ? this._makeDraggable() - : this.uiDialog.draggable('destroy')); - break; - case "height": - this.uiDialog.height(value); - break; - case "position": - this._position(value); - break; - case "resizable": - var uiDialog = this.uiDialog, - isResizable = this.uiDialog.is(':data(resizable)'); - - // currently resizable, becoming non-resizable - (isResizable && !value && uiDialog.resizable('destroy')); - - // currently resizable, changing handles - (isResizable && typeof value == 'string' && - uiDialog.resizable('option', 'handles', value)); - - // currently non-resizable, becoming resizable - (isResizable || this._makeResizable(value)); - break; - case "title": - $(".ui-dialog-title", this.uiDialogTitlebar).html(value || ' '); - break; - case "width": - this.uiDialog.width(value); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - }, - - _size: function() { - /* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content - * divs will both have width and height set, so we need to reset them - */ - var options = this.options; - - // reset content sizing - this.element.css({ - height: 0, - minHeight: 0, - width: 'auto' - }); - - // reset wrapper sizing - // determine the height of all the non-content elements - var nonContentHeight = this.uiDialog.css({ - height: 'auto', - width: options.width - }) - .height(); - - this.element - .css({ - minHeight: Math.max(options.minHeight - nonContentHeight, 0), - height: options.height == 'auto' - ? 'auto' - : Math.max(options.height - nonContentHeight, 0) - }); - } -}); - -$.extend($.ui.dialog, { - version: "1.7", - defaults: { - autoOpen: true, - bgiframe: false, - buttons: {}, - closeOnEscape: true, - closeText: 'close', - dialogClass: '', - draggable: true, - hide: null, - height: 'auto', - maxHeight: false, - maxWidth: false, - minHeight: 150, - minWidth: 150, - modal: false, - position: 'center', - resizable: true, - show: null, - stack: true, - title: '', - width: 300, - zIndex: 1000 - }, - - getter: 'isOpen', - - uuid: 0, - maxZ: 0, - - getTitleId: function($el) { - return 'ui-dialog-title-' + ($el.attr('id') || ++this.uuid); - }, - - overlay: function(dialog) { - this.$el = $.ui.dialog.overlay.create(dialog); - } -}); - -$.extend($.ui.dialog.overlay, { - instances: [], - maxZ: 0, - events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','), - function(event) { return event + '.dialog-overlay'; }).join(' '), - create: function(dialog) { - if (this.instances.length === 0) { - // prevent use of anchors and inputs - // we use a setTimeout in case the overlay is created from an - // event that we're going to be cancelling (see #2804) - setTimeout(function() { - $(document).bind($.ui.dialog.overlay.events, function(event) { - var dialogZ = $(event.target).parents('.ui-dialog').css('zIndex') || 0; - return (dialogZ > $.ui.dialog.overlay.maxZ); - }); - }, 1); - - // allow closing by pressing the escape key - $(document).bind('keydown.dialog-overlay', function(event) { - (dialog.options.closeOnEscape && event.keyCode - && event.keyCode == $.ui.keyCode.ESCAPE && dialog.close(event)); - }); - - // handle window resize - $(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize); - } - - var $el = $('
    ').appendTo(document.body) - .addClass('ui-widget-overlay').css({ - width: this.width(), - height: this.height() - }); - - (dialog.options.bgiframe && $.fn.bgiframe && $el.bgiframe()); - - this.instances.push($el); - return $el; - }, - - destroy: function($el) { - this.instances.splice($.inArray(this.instances, $el), 1); - - if (this.instances.length === 0) { - $([document, window]).unbind('.dialog-overlay'); - } - - $el.remove(); - }, - - height: function() { - // handle IE 6 - if ($.browser.msie && $.browser.version < 7) { - var scrollHeight = Math.max( - document.documentElement.scrollHeight, - document.body.scrollHeight - ); - var offsetHeight = Math.max( - document.documentElement.offsetHeight, - document.body.offsetHeight - ); - - if (scrollHeight < offsetHeight) { - return $(window).height() + 'px'; - } else { - return scrollHeight + 'px'; - } - // handle "good" browsers - } else { - return $(document).height() + 'px'; - } - }, - - width: function() { - // handle IE 6 - if ($.browser.msie && $.browser.version < 7) { - var scrollWidth = Math.max( - document.documentElement.scrollWidth, - document.body.scrollWidth - ); - var offsetWidth = Math.max( - document.documentElement.offsetWidth, - document.body.offsetWidth - ); - - if (scrollWidth < offsetWidth) { - return $(window).width() + 'px'; - } else { - return scrollWidth + 'px'; - } - // handle "good" browsers - } else { - return $(document).width() + 'px'; - } - }, - - resize: function() { - /* If the dialog is draggable and the user drags it past the - * right edge of the window, the document becomes wider so we - * need to stretch the overlay. If the user then drags the - * dialog back to the left, the document will become narrower, - * so we need to shrink the overlay to the appropriate size. - * This is handled by shrinking the overlay before setting it - * to the full document size. - */ - var $overlays = $([]); - $.each($.ui.dialog.overlay.instances, function() { - $overlays = $overlays.add(this); - }); - - $overlays.css({ - width: 0, - height: 0 - }).css({ - width: $.ui.dialog.overlay.width(), - height: $.ui.dialog.overlay.height() - }); - } -}); - -$.extend($.ui.dialog.overlay.prototype, { - destroy: function() { - $.ui.dialog.overlay.destroy(this.$el); - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.draggable.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.draggable.js deleted file mode 100644 index 6a563e8..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('
    ') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.droppable.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.droppable.js deleted file mode 100644 index d4b17f6..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(accept); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.progressbar.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.progressbar.js deleted file mode 100644 index 14a73df..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.progressbar.js +++ /dev/null @@ -1,112 +0,0 @@ -/* - * jQuery UI Progressbar 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Progressbar - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.progressbar", { - - _init: function() { - - this.element - .addClass("ui-progressbar" - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all") - .attr({ - role: "progressbar", - "aria-valuemin": this._valueMin(), - "aria-valuemax": this._valueMax(), - "aria-valuenow": this._value() - }); - - this.valueDiv = $('
    ').appendTo(this.element); - - 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") - .removeData("progressbar") - .unbind(".progressbar"); - - this.valueDiv.remove(); - - $.widget.prototype.destroy.apply(this, arguments); - - }, - - value: function(newValue) { - arguments.length && this._setData("value", newValue); - return this._value(); - }, - - _setData: function(key, value) { - - switch (key) { - case 'value': - this.options.value = value; - this._refreshValue(); - this._trigger('change', null, {}); - break; - } - - $.widget.prototype._setData.apply(this, arguments); - - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _valueMin: function() { - var valueMin = 0; - return valueMin; - }, - - _valueMax: function() { - var valueMax = 100; - return valueMax; - }, - - _refreshValue: function() { - var value = this.value(); - this.valueDiv[value == this._valueMax() ? 'addClass' : 'removeClass']("ui-corner-right"); - this.valueDiv.width(value + '%'); - this.element.attr("aria-valuenow", value); - } - -}); - -$.extend($.ui.progressbar, { - version: "1.7", - defaults: { - value: 0 - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.resizable.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.resizable.js deleted file mode 100644 index 0e4b894..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.resizable.js +++ /dev/null @@ -1,800 +0,0 @@ -/* - * jQuery UI Resizable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Resizables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.resizable", $.extend({}, $.ui.mouse, { - - _init: function() { - - var self = this, o = this.options; - this.element.addClass("ui-resizable"); - - $.extend(this, { - _aspectRatio: !!(o.aspectRatio), - aspectRatio: o.aspectRatio, - originalElement: this.element, - _proportionallyResizeElements: [], - _helper: o.helper || o.ghost || o.animate ? o.helper || 'ui-resizable-helper' : null - }); - - //Wrap the element if it cannot hold child nodes - if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)) { - - //Opera fix for relative positioning - if (/relative/.test(this.element.css('position')) && $.browser.opera) - this.element.css({ position: 'relative', top: 'auto', left: 'auto' }); - - //Create a wrapper element and set the wrapper to the new current internal element - this.element.wrap( - $('
    ').css({ - position: this.element.css('position'), - width: this.element.outerWidth(), - height: this.element.outerHeight(), - top: this.element.css('top'), - left: this.element.css('left') - }) - ); - - //Overwrite the original this.element - this.element = this.element.parent().data( - "resizable", this.element.data('resizable') - ); - - this.elementIsWrapper = true; - - //Move margins to the wrapper - 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}); - - //Prevent Safari textarea resize - this.originalResizeStyle = this.originalElement.css('resize'); - this.originalElement.css('resize', 'none'); - - //Push the actual element to our proportionallyResize internal array - this._proportionallyResizeElements.push(this.originalElement.css({ position: 'static', zoom: 1, display: 'block' })); - - // avoid IE jump (hard set the margin) - this.originalElement.css({ margin: this.originalElement.css('margin') }); - - // fix handlers offset - this._proportionallyResize(); - - } - - this.handles = o.handles || (!$('.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 n = this.handles.split(","); this.handles = {}; - - for(var i = 0; i < n.length; i++) { - - var handle = $.trim(n[i]), hname = 'ui-resizable-'+handle; - var axis = $('
    '); - - // increase zIndex of sw, se, ne, nw axis - //TODO : this modifies original option - if(/sw|se|ne|nw/.test(handle)) axis.css({ zIndex: ++o.zIndex }); - - //TODO : What's going on here? - if ('se' == handle) { - axis.addClass('ui-icon ui-icon-gripsmall-diagonal-se'); - }; - - //Insert into internal handles object and append to element - this.handles[handle] = '.ui-resizable-'+handle; - this.element.append(axis); - } - - } - - this._renderAxis = function(target) { - - target = target || this.element; - - for(var i in this.handles) { - - if(this.handles[i].constructor == String) - this.handles[i] = $(this.handles[i], this.element).show(); - - //Apply pad to wrapper element, needed to fix axis position (textarea, inputs, scrolls) - if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) { - - var axis = $(this.handles[i], this.element), padWrapper = 0; - - //Checking the correct pad and border - padWrapper = /sw|ne|nw|se|n|s/.test(i) ? axis.outerHeight() : axis.outerWidth(); - - //The padding type i have to apply... - var padPos = [ 'padding', - /ne|nw|n/.test(i) ? 'Top' : - /se|sw|s/.test(i) ? 'Bottom' : - /^e$/.test(i) ? 'Right' : 'Left' ].join(""); - - target.css(padPos, padWrapper); - - this._proportionallyResize(); - - } - - //TODO: What's that good for? There's not anything to be executed left - if(!$(this.handles[i]).length) - continue; - - } - }; - - //TODO: make renderAxis a prototype function - this._renderAxis(this.element); - - this._handles = $('.ui-resizable-handle', this.element) - .disableSelection(); - - //Matching axis name - this._handles.mouseover(function() { - if (!self.resizing) { - if (this.className) - var axis = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i); - //Axis, default = se - self.axis = axis && axis[1] ? axis[1] : 'se'; - } - }); - - //If we want to auto hide the elements - if (o.autoHide) { - this._handles.hide(); - $(this.element) - .addClass("ui-resizable-autohide") - .hover(function() { - $(this).removeClass("ui-resizable-autohide"); - self._handles.show(); - }, - function(){ - if (!self.resizing) { - $(this).addClass("ui-resizable-autohide"); - self._handles.hide(); - } - }); - } - - //Initialize the mouse interaction - this._mouseInit(); - - }, - - destroy: function() { - - this._mouseDestroy(); - - var _destroy = function(exp) { - $(exp).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing") - .removeData("resizable").unbind(".resizable").find('.ui-resizable-handle').remove(); - }; - - //TODO: Unwrap at same DOM position - if (this.elementIsWrapper) { - _destroy(this.element); - var wrapper = this.element; - wrapper.parent().append( - this.originalElement.css({ - position: wrapper.css('position'), - width: wrapper.outerWidth(), - height: wrapper.outerHeight(), - top: wrapper.css('top'), - left: wrapper.css('left') - }) - ).end().remove(); - } - - this.originalElement.css('resize', this.originalResizeStyle); - _destroy(this.originalElement); - - }, - - _mouseCapture: function(event) { - - var handle = false; - for(var i in this.handles) { - if($(this.handles[i])[0] == event.target) handle = true; - } - - return this.options.disabled || !!handle; - - }, - - _mouseStart: function(event) { - - var o = this.options, iniPos = this.element.position(), el = this.element; - - this.resizing = true; - this.documentScroll = { top: $(document).scrollTop(), left: $(document).scrollLeft() }; - - // bugfix for http://dev.jquery.com/ticket/1749 - if (el.is('.ui-draggable') || (/absolute/).test(el.css('position'))) { - el.css({ position: 'absolute', top: iniPos.top, left: iniPos.left }); - } - - //Opera fixing relative position - if ($.browser.opera && (/relative/).test(el.css('position'))) - el.css({ position: 'relative', top: 'auto', left: 'auto' }); - - this._renderProxy(); - - var curleft = num(this.helper.css('left')), curtop = num(this.helper.css('top')); - - if (o.containment) { - curleft += $(o.containment).scrollLeft() || 0; - curtop += $(o.containment).scrollTop() || 0; - } - - //Store needed variables - this.offset = this.helper.offset(); - this.position = { left: curleft, top: curtop }; - this.size = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() }; - this.originalSize = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() }; - this.originalPosition = { left: curleft, top: curtop }; - this.sizeDiff = { width: el.outerWidth() - el.width(), height: el.outerHeight() - el.height() }; - this.originalMousePosition = { left: event.pageX, top: event.pageY }; - - //Aspect Ratio - this.aspectRatio = (typeof o.aspectRatio == 'number') ? o.aspectRatio : ((this.originalSize.width / this.originalSize.height) || 1); - - var cursor = $('.ui-resizable-' + this.axis).css('cursor'); - $('body').css('cursor', cursor == 'auto' ? this.axis + '-resize' : cursor); - - el.addClass("ui-resizable-resizing"); - this._propagate("start", event); - return true; - }, - - _mouseDrag: function(event) { - - //Increase performance, avoid regex - var el = this.helper, o = this.options, props = {}, - self = this, smp = this.originalMousePosition, a = this.axis; - - var dx = (event.pageX-smp.left)||0, dy = (event.pageY-smp.top)||0; - var trigger = this._change[a]; - if (!trigger) return false; - - // Calculate the attrs that will be change - var data = trigger.apply(this, [event, dx, dy]), ie6 = $.browser.msie && $.browser.version < 7, csdif = this.sizeDiff; - - if (this._aspectRatio || event.shiftKey) - data = this._updateRatio(data, event); - - data = this._respectSize(data, event); - - // plugins callbacks need to be called first - this._propagate("resize", event); - - el.css({ - top: this.position.top + "px", left: this.position.left + "px", - width: this.size.width + "px", height: this.size.height + "px" - }); - - if (!this._helper && this._proportionallyResizeElements.length) - this._proportionallyResize(); - - this._updateCache(data); - - // calling the user callback at the end - this._trigger('resize', event, this.ui()); - - return false; - }, - - _mouseStop: function(event) { - - this.resizing = false; - var o = this.options, self = this; - - if(this._helper) { - var pr = this._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName), - soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height, - soffsetw = ista ? 0 : self.sizeDiff.width; - - var s = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) }, - left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null, - top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null; - - if (!o.animate) - this.element.css($.extend(s, { top: top, left: left })); - - self.helper.height(self.size.height); - self.helper.width(self.size.width); - - if (this._helper && !o.animate) this._proportionallyResize(); - } - - $('body').css('cursor', 'auto'); - - this.element.removeClass("ui-resizable-resizing"); - - this._propagate("stop", event); - - if (this._helper) this.helper.remove(); - return false; - - }, - - _updateCache: function(data) { - var o = this.options; - this.offset = this.helper.offset(); - if (isNumber(data.left)) this.position.left = data.left; - if (isNumber(data.top)) this.position.top = data.top; - if (isNumber(data.height)) this.size.height = data.height; - if (isNumber(data.width)) this.size.width = data.width; - }, - - _updateRatio: function(data, event) { - - var o = this.options, cpos = this.position, csize = this.size, a = this.axis; - - if (data.height) data.width = (csize.height * this.aspectRatio); - else if (data.width) data.height = (csize.width / this.aspectRatio); - - if (a == 'sw') { - data.left = cpos.left + (csize.width - data.width); - data.top = null; - } - if (a == 'nw') { - data.top = cpos.top + (csize.height - data.height); - data.left = cpos.left + (csize.width - data.width); - } - - return data; - }, - - _respectSize: function(data, event) { - - var el = this.helper, o = this.options, pRatio = this._aspectRatio || event.shiftKey, a = this.axis, - ismaxw = isNumber(data.width) && o.maxWidth && (o.maxWidth < data.width), ismaxh = isNumber(data.height) && o.maxHeight && (o.maxHeight < data.height), - isminw = isNumber(data.width) && o.minWidth && (o.minWidth > data.width), isminh = isNumber(data.height) && o.minHeight && (o.minHeight > data.height); - - if (isminw) data.width = o.minWidth; - if (isminh) data.height = o.minHeight; - if (ismaxw) data.width = o.maxWidth; - if (ismaxh) data.height = o.maxHeight; - - var dw = this.originalPosition.left + this.originalSize.width, dh = this.position.top + this.size.height; - var cw = /sw|nw|w/.test(a), ch = /nw|ne|n/.test(a); - - if (isminw && cw) data.left = dw - o.minWidth; - if (ismaxw && cw) data.left = dw - o.maxWidth; - if (isminh && ch) data.top = dh - o.minHeight; - if (ismaxh && ch) data.top = dh - o.maxHeight; - - // fixing jump error on top/left - bug #2330 - var isNotwh = !data.width && !data.height; - if (isNotwh && !data.left && data.top) data.top = null; - else if (isNotwh && !data.top && data.left) data.left = null; - - return data; - }, - - _proportionallyResize: function() { - - var o = this.options; - if (!this._proportionallyResizeElements.length) return; - var element = this.helper || this.element; - - for (var i=0; i < this._proportionallyResizeElements.length; i++) { - - var prel = this._proportionallyResizeElements[i]; - - if (!this.borderDif) { - var b = [prel.css('borderTopWidth'), prel.css('borderRightWidth'), prel.css('borderBottomWidth'), prel.css('borderLeftWidth')], - p = [prel.css('paddingTop'), prel.css('paddingRight'), prel.css('paddingBottom'), prel.css('paddingLeft')]; - - this.borderDif = $.map(b, function(v, i) { - var border = parseInt(v,10)||0, padding = parseInt(p[i],10)||0; - return border + padding; - }); - } - - if ($.browser.msie && !(!($(element).is(':hidden') || $(element).parents(':hidden').length))) - continue; - - prel.css({ - height: (element.height() - this.borderDif[0] - this.borderDif[2]) || 0, - width: (element.width() - this.borderDif[1] - this.borderDif[3]) || 0 - }); - - }; - - }, - - _renderProxy: function() { - - var el = this.element, o = this.options; - this.elementOffset = el.offset(); - - if(this._helper) { - - this.helper = this.helper || $('
    '); - - // fix ie6 offset TODO: This seems broken - var ie6 = $.browser.msie && $.browser.version < 7, ie6offset = (ie6 ? 1 : 0), - pxyoffset = ( ie6 ? 2 : -1 ); - - this.helper.addClass(this._helper).css({ - width: this.element.outerWidth() + pxyoffset, - height: this.element.outerHeight() + pxyoffset, - position: 'absolute', - left: this.elementOffset.left - ie6offset +'px', - top: this.elementOffset.top - ie6offset +'px', - zIndex: ++o.zIndex //TODO: Don't modify option - }); - - this.helper - .appendTo("body") - .disableSelection(); - - } else { - this.helper = this.element; - } - - }, - - _change: { - e: function(event, dx, dy) { - return { width: this.originalSize.width + dx }; - }, - w: function(event, dx, dy) { - var o = this.options, cs = this.originalSize, sp = this.originalPosition; - return { left: sp.left + dx, width: cs.width - dx }; - }, - n: function(event, dx, dy) { - var o = this.options, cs = this.originalSize, sp = this.originalPosition; - return { top: sp.top + dy, height: cs.height - dy }; - }, - s: function(event, dx, dy) { - return { height: this.originalSize.height + dy }; - }, - se: function(event, dx, dy) { - return $.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [event, dx, dy])); - }, - sw: function(event, dx, dy) { - return $.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [event, dx, dy])); - }, - ne: function(event, dx, dy) { - return $.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [event, dx, dy])); - }, - nw: function(event, dx, dy) { - return $.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [event, dx, dy])); - } - }, - - _propagate: function(n, event) { - $.ui.plugin.call(this, n, [event, this.ui()]); - (n != "resize" && this._trigger(n, event, 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 - }; - } - -})); - -$.extend($.ui.resizable, { - version: "1.7", - eventPrefix: "resize", - defaults: { - alsoResize: false, - animate: false, - animateDuration: "slow", - animateEasing: "swing", - aspectRatio: false, - autoHide: false, - cancel: ":input,option", - containment: false, - delay: 0, - distance: 1, - ghost: false, - grid: false, - handles: "e,s,se", - helper: false, - maxHeight: null, - maxWidth: null, - minHeight: 10, - minWidth: 10, - zIndex: 1000 - } -}); - -/* - * Resizable Extensions - */ - -$.ui.plugin.add("resizable", "alsoResize", { - - start: function(event, ui) { - - var self = $(this).data("resizable"), o = self.options; - - _store = function(exp) { - $(exp).each(function() { - $(this).data("resizable-alsoresize", { - width: parseInt($(this).width(), 10), height: parseInt($(this).height(), 10), - left: parseInt($(this).css('left'), 10), top: parseInt($(this).css('top'), 10) - }); - }); - }; - - if (typeof(o.alsoResize) == 'object' && !o.alsoResize.parentNode) { - if (o.alsoResize.length) { o.alsoResize = o.alsoResize[0]; _store(o.alsoResize); } - else { $.each(o.alsoResize, function(exp, c) { _store(exp); }); } - }else{ - _store(o.alsoResize); - } - }, - - resize: function(event, ui){ - var self = $(this).data("resizable"), o = self.options, os = self.originalSize, op = self.originalPosition; - - var delta = { - height: (self.size.height - os.height) || 0, width: (self.size.width - os.width) || 0, - top: (self.position.top - op.top) || 0, left: (self.position.left - op.left) || 0 - }, - - _alsoResize = function(exp, c) { - $(exp).each(function() { - var el = $(this), start = $(this).data("resizable-alsoresize"), style = {}, css = c && c.length ? c : ['width', 'height', 'top', 'left']; - - $.each(css || ['width', 'height', 'top', 'left'], function(i, prop) { - var sum = (start[prop]||0) + (delta[prop]||0); - if (sum && sum >= 0) - style[prop] = sum || null; - }); - - //Opera fixing relative position - if (/relative/.test(el.css('position')) && $.browser.opera) { - self._revertToRelativePosition = true; - el.css({ position: 'absolute', top: 'auto', left: 'auto' }); - } - - el.css(style); - }); - }; - - if (typeof(o.alsoResize) == 'object' && !o.alsoResize.nodeType) { - $.each(o.alsoResize, function(exp, c) { _alsoResize(exp, c); }); - }else{ - _alsoResize(o.alsoResize); - } - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"); - - //Opera fixing relative position - if (self._revertToRelativePosition && $.browser.opera) { - self._revertToRelativePosition = false; - el.css({ position: 'relative' }); - } - - $(this).removeData("resizable-alsoresize-start"); - } -}); - -$.ui.plugin.add("resizable", "animate", { - - stop: function(event, ui) { - var self = $(this).data("resizable"), o = self.options; - - var pr = self._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName), - soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height, - soffsetw = ista ? 0 : self.sizeDiff.width; - - var style = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) }, - left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null, - top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null; - - self.element.animate( - $.extend(style, top && left ? { top: top, left: left } : {}), { - duration: o.animateDuration, - easing: o.animateEasing, - step: function() { - - var data = { - width: parseInt(self.element.css('width'), 10), - height: parseInt(self.element.css('height'), 10), - top: parseInt(self.element.css('top'), 10), - left: parseInt(self.element.css('left'), 10) - }; - - if (pr && pr.length) $(pr[0]).css({ width: data.width, height: data.height }); - - // propagating resize, and updating values for each animation step - self._updateCache(data); - self._propagate("resize", event); - - } - } - ); - } - -}); - -$.ui.plugin.add("resizable", "containment", { - - start: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, el = self.element; - var oc = o.containment, ce = (oc instanceof $) ? oc.get(0) : (/parent/.test(oc)) ? el.parent().get(0) : oc; - if (!ce) return; - - self.containerElement = $(ce); - - if (/document/.test(oc) || oc == document) { - self.containerOffset = { left: 0, top: 0 }; - self.containerPosition = { left: 0, top: 0 }; - - self.parentData = { - element: $(document), left: 0, top: 0, - width: $(document).width(), height: $(document).height() || document.body.parentNode.scrollHeight - }; - } - - // i'm a node, so compute top, left, right, bottom - else { - var element = $(ce), p = []; - $([ "Top", "Right", "Left", "Bottom" ]).each(function(i, name) { p[i] = num(element.css("padding" + name)); }); - - self.containerOffset = element.offset(); - self.containerPosition = element.position(); - self.containerSize = { height: (element.innerHeight() - p[3]), width: (element.innerWidth() - p[1]) }; - - var co = self.containerOffset, ch = self.containerSize.height, cw = self.containerSize.width, - width = ($.ui.hasScroll(ce, "left") ? ce.scrollWidth : cw ), height = ($.ui.hasScroll(ce) ? ce.scrollHeight : ch); - - self.parentData = { - element: ce, left: co.left, top: co.top, width: width, height: height - }; - } - }, - - resize: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, - ps = self.containerSize, co = self.containerOffset, cs = self.size, cp = self.position, - pRatio = o._aspectRatio || event.shiftKey, cop = { top:0, left:0 }, ce = self.containerElement; - - if (ce[0] != document && (/static/).test(ce.css('position'))) cop = co; - - if (cp.left < (self._helper ? co.left : 0)) { - self.size.width = self.size.width + (self._helper ? (self.position.left - co.left) : (self.position.left - cop.left)); - if (pRatio) self.size.height = self.size.width / o.aspectRatio; - self.position.left = o.helper ? co.left : 0; - } - - if (cp.top < (self._helper ? co.top : 0)) { - self.size.height = self.size.height + (self._helper ? (self.position.top - co.top) : self.position.top); - if (pRatio) self.size.width = self.size.height * o.aspectRatio; - self.position.top = self._helper ? co.top : 0; - } - - self.offset.left = self.parentData.left+self.position.left; - self.offset.top = self.parentData.top+self.position.top; - - var woset = Math.abs( (self._helper ? self.offset.left - cop.left : (self.offset.left - cop.left)) + self.sizeDiff.width ), - hoset = Math.abs( (self._helper ? self.offset.top - cop.top : (self.offset.top - co.top)) + self.sizeDiff.height ); - - var isParent = self.containerElement.get(0) == self.element.parent().get(0), - isOffsetRelative = /relative|absolute/.test(self.containerElement.css('position')); - - if(isParent && isOffsetRelative) woset -= self.parentData.left; - - if (woset + self.size.width >= self.parentData.width) { - self.size.width = self.parentData.width - woset; - if (pRatio) self.size.height = self.size.width / o.aspectRatio; - } - - if (hoset + self.size.height >= self.parentData.height) { - self.size.height = self.parentData.height - hoset; - if (pRatio) self.size.width = self.size.height * o.aspectRatio; - } - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"), o = self.options, cp = self.position, - co = self.containerOffset, cop = self.containerPosition, ce = self.containerElement; - - var helper = $(self.helper), ho = helper.offset(), w = helper.outerWidth() - self.sizeDiff.width, h = helper.outerHeight() - self.sizeDiff.height; - - if (self._helper && !o.animate && (/relative/).test(ce.css('position'))) - $(this).css({ left: ho.left - cop.left - co.left, width: w, height: h }); - - if (self._helper && !o.animate && (/static/).test(ce.css('position'))) - $(this).css({ left: ho.left - cop.left - co.left, width: w, height: h }); - - } -}); - -$.ui.plugin.add("resizable", "ghost", { - - start: function(event, ui) { - - var self = $(this).data("resizable"), o = self.options, cs = self.size; - - self.ghost = self.originalElement.clone(); - self.ghost - .css({ opacity: .25, display: 'block', position: 'relative', height: cs.height, width: cs.width, margin: 0, left: 0, top: 0 }) - .addClass('ui-resizable-ghost') - .addClass(typeof o.ghost == 'string' ? o.ghost : ''); - - self.ghost.appendTo(self.helper); - - }, - - resize: function(event, ui){ - var self = $(this).data("resizable"), o = self.options; - if (self.ghost) self.ghost.css({ position: 'relative', height: self.size.height, width: self.size.width }); - }, - - stop: function(event, ui){ - var self = $(this).data("resizable"), o = self.options; - if (self.ghost && self.helper) self.helper.get(0).removeChild(self.ghost.get(0)); - } - -}); - -$.ui.plugin.add("resizable", "grid", { - - resize: function(event, ui) { - var self = $(this).data("resizable"), o = self.options, cs = self.size, os = self.originalSize, op = self.originalPosition, a = self.axis, ratio = o._aspectRatio || event.shiftKey; - o.grid = typeof o.grid == "number" ? [o.grid, o.grid] : o.grid; - var ox = Math.round((cs.width - os.width) / (o.grid[0]||1)) * (o.grid[0]||1), oy = Math.round((cs.height - os.height) / (o.grid[1]||1)) * (o.grid[1]||1); - - if (/^(se|s|e)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - } - else if (/^(ne)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.top = op.top - oy; - } - else if (/^(sw)$/.test(a)) { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.left = op.left - ox; - } - else { - self.size.width = os.width + ox; - self.size.height = os.height + oy; - self.position.top = op.top - oy; - self.position.left = op.left - ox; - } - } - -}); - -var num = function(v) { - return parseInt(v, 10) || 0; -}; - -var isNumber = function(value) { - return !isNaN(parseInt(value, 10)); -}; - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.selectable.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.selectable.js deleted file mode 100644 index 3d5df28..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.selectable.js +++ /dev/null @@ -1,257 +0,0 @@ -/* - * jQuery UI Selectable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Selectables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.selectable", $.extend({}, $.ui.mouse, { - - _init: function() { - var self = this; - - this.element.addClass("ui-selectable"); - - this.dragged = false; - - // cache selectee children based on filter - var selectees; - this.refresh = function() { - selectees = $(self.options.filter, self.element[0]); - selectees.each(function() { - var $this = $(this); - var pos = $this.offset(); - $.data(this, "selectable-item", { - element: this, - $element: $this, - left: pos.left, - top: pos.top, - right: pos.left + $this.outerWidth(), - bottom: pos.top + $this.outerHeight(), - startselected: false, - selected: $this.hasClass('ui-selected'), - selecting: $this.hasClass('ui-selecting'), - unselecting: $this.hasClass('ui-unselecting') - }); - }); - }; - this.refresh(); - - this.selectees = selectees.addClass("ui-selectee"); - - this._mouseInit(); - - this.helper = $(document.createElement('div')) - .css({border:'1px dotted black'}) - .addClass("ui-selectable-helper"); - }, - - destroy: function() { - this.element - .removeClass("ui-selectable ui-selectable-disabled") - .removeData("selectable") - .unbind(".selectable"); - this._mouseDestroy(); - }, - - _mouseStart: function(event) { - var self = this; - - this.opos = [event.pageX, event.pageY]; - - if (this.options.disabled) - return; - - var options = this.options; - - this.selectees = $(options.filter, this.element[0]); - - this._trigger("start", event); - - $('body').append(this.helper); - // position helper (lasso) - this.helper.css({ - "z-index": 100, - "position": "absolute", - "left": event.clientX, - "top": event.clientY, - "width": 0, - "height": 0 - }); - - if (options.autoRefresh) { - this.refresh(); - } - - this.selectees.filter('.ui-selected').each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.startselected = true; - if (!event.metaKey) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - }); - - $(event.target).parents().andSelf().each(function() { - var selectee = $.data(this, "selectable-item"); - if (selectee) { - selectee.$element.removeClass("ui-unselecting").addClass('ui-selecting'); - selectee.unselecting = false; - selectee.selecting = true; - selectee.selected = true; - // selectable SELECTING callback - self._trigger("selecting", event, { - selecting: selectee.element - }); - return false; - } - }); - - }, - - _mouseDrag: function(event) { - var self = this; - this.dragged = true; - - if (this.options.disabled) - return; - - var options = this.options; - - var x1 = this.opos[0], y1 = this.opos[1], x2 = event.pageX, y2 = event.pageY; - if (x1 > x2) { var tmp = x2; x2 = x1; x1 = tmp; } - if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; } - this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1}); - - this.selectees.each(function() { - var selectee = $.data(this, "selectable-item"); - //prevent helper from being selected if appendTo: selectable - if (!selectee || selectee.element == self.element[0]) - return; - var hit = false; - if (options.tolerance == 'touch') { - hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) ); - } else if (options.tolerance == 'fit') { - hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2); - } - - if (hit) { - // SELECT - if (selectee.selected) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - } - if (selectee.unselecting) { - selectee.$element.removeClass('ui-unselecting'); - selectee.unselecting = false; - } - if (!selectee.selecting) { - selectee.$element.addClass('ui-selecting'); - selectee.selecting = true; - // selectable SELECTING callback - self._trigger("selecting", event, { - selecting: selectee.element - }); - } - } else { - // UNSELECT - if (selectee.selecting) { - if (event.metaKey && selectee.startselected) { - selectee.$element.removeClass('ui-selecting'); - selectee.selecting = false; - selectee.$element.addClass('ui-selected'); - selectee.selected = true; - } else { - selectee.$element.removeClass('ui-selecting'); - selectee.selecting = false; - if (selectee.startselected) { - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - } - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - } - if (selectee.selected) { - if (!event.metaKey && !selectee.startselected) { - selectee.$element.removeClass('ui-selected'); - selectee.selected = false; - - selectee.$element.addClass('ui-unselecting'); - selectee.unselecting = true; - // selectable UNSELECTING callback - self._trigger("unselecting", event, { - unselecting: selectee.element - }); - } - } - } - }); - - return false; - }, - - _mouseStop: function(event) { - var self = this; - - this.dragged = false; - - var options = this.options; - - $('.ui-unselecting', this.element[0]).each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.$element.removeClass('ui-unselecting'); - selectee.unselecting = false; - selectee.startselected = false; - self._trigger("unselected", event, { - unselected: selectee.element - }); - }); - $('.ui-selecting', this.element[0]).each(function() { - var selectee = $.data(this, "selectable-item"); - selectee.$element.removeClass('ui-selecting').addClass('ui-selected'); - selectee.selecting = false; - selectee.selected = true; - selectee.startselected = true; - self._trigger("selected", event, { - selected: selectee.element - }); - }); - this._trigger("stop", event); - - this.helper.remove(); - - return false; - } - -})); - -$.extend($.ui.selectable, { - version: "1.7", - defaults: { - appendTo: 'body', - autoRefresh: true, - cancel: ":input,option", - delay: 0, - distance: 0, - filter: '*', - tolerance: 'touch' - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.slider.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.slider.js deleted file mode 100644 index a7b4d0c..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.slider.js +++ /dev/null @@ -1,511 +0,0 @@ -/* - * jQuery UI Slider 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Slider - * - * Depends: - * ui.core.js - */ - -(function($) { - -$.widget("ui.slider", $.extend({}, $.ui.mouse, { - - _init: function() { - - var self = this, o = this.options; - this._keySliding = false; - this._handleIndex = null; - this._detectOrientation(); - this._mouseInit(); - - this.element - .addClass("ui-slider" - + " ui-slider-" + this.orientation - + " ui-widget" - + " ui-widget-content" - + " ui-corner-all"); - - this.range = $([]); - - if (o.range) { - - if (o.range === true) { - this.range = $('
    '); - if (!o.values) o.values = [this._valueMin(), this._valueMin()]; - if (o.values.length && o.values.length != 2) { - o.values = [o.values[0], o.values[0]]; - } - } else { - this.range = $('
    '); - } - - this.range - .appendTo(this.element) - .addClass("ui-slider-range"); - - if (o.range == "min" || o.range == "max") { - this.range.addClass("ui-slider-range-" + o.range); - } - - // note: this isn't the most fittingly semantic framework class for this element, - // but worked best visually with a variety of themes - this.range.addClass("ui-widget-header"); - - } - - if ($(".ui-slider-handle", this.element).length == 0) - $('
    ') - .appendTo(this.element) - .addClass("ui-slider-handle"); - - if (o.values && o.values.length) { - while ($(".ui-slider-handle", this.element).length < o.values.length) - $('') - .appendTo(this.element) - .addClass("ui-slider-handle"); - } - - this.handles = $(".ui-slider-handle", this.element) - .addClass("ui-state-default" - + " ui-corner-all"); - - this.handle = this.handles.eq(0); - - this.handles.add(this.range).filter("a") - .click(function(event) { event.preventDefault(); }) - .hover(function() { $(this).addClass('ui-state-hover'); }, function() { $(this).removeClass('ui-state-hover'); }) - .focus(function() { $(".ui-slider .ui-state-focus").removeClass('ui-state-focus'); $(this).addClass('ui-state-focus'); }) - .blur(function() { $(this).removeClass('ui-state-focus'); }); - - this.handles.each(function(i) { - $(this).data("index.ui-slider-handle", i); - }); - - this.handles.keydown(function(event) { - - var ret = true; - - var index = $(this).data("index.ui-slider-handle"); - - if (self.options.disabled) - return; - - switch (event.keyCode) { - case $.ui.keyCode.HOME: - case $.ui.keyCode.END: - case $.ui.keyCode.UP: - case $.ui.keyCode.RIGHT: - case $.ui.keyCode.DOWN: - case $.ui.keyCode.LEFT: - ret = false; - if (!self._keySliding) { - self._keySliding = true; - $(this).addClass("ui-state-active"); - self._start(event, index); - } - break; - } - - var curVal, newVal, step = self._step(); - if (self.options.values && self.options.values.length) { - curVal = newVal = self.values(index); - } else { - curVal = newVal = self.value(); - } - - switch (event.keyCode) { - case $.ui.keyCode.HOME: - newVal = self._valueMin(); - break; - case $.ui.keyCode.END: - newVal = self._valueMax(); - break; - case $.ui.keyCode.UP: - case $.ui.keyCode.RIGHT: - if(curVal == self._valueMax()) return; - newVal = curVal + step; - break; - case $.ui.keyCode.DOWN: - case $.ui.keyCode.LEFT: - if(curVal == self._valueMin()) return; - newVal = curVal - step; - break; - } - - self._slide(event, index, newVal); - - return ret; - - }).keyup(function(event) { - - var index = $(this).data("index.ui-slider-handle"); - - if (self._keySliding) { - self._stop(event, index); - self._change(event, index); - self._keySliding = false; - $(this).removeClass("ui-state-active"); - } - - }); - - this._refreshValue(); - - }, - - destroy: function() { - - this.handles.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(); - - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (o.disabled) - return false; - - this.elementSize = { - width: this.element.outerWidth(), - height: this.element.outerHeight() - }; - this.elementOffset = this.element.offset(); - - var position = { x: event.pageX, y: event.pageY }; - var normValue = this._normValueFromMouse(position); - - var distance = this._valueMax() + 1, closestHandle; - var self = this, index; - this.handles.each(function(i) { - var thisDistance = Math.abs(normValue - self.values(i)); - if (distance > thisDistance) { - distance = thisDistance; - closestHandle = $(this); - index = i; - } - }); - - // workaround for bug #3736 (if both handles of a range are at 0, - // the first is always used as the one with least distance, - // and moving it is obviously prevented by preventing negative ranges) - if(o.range == true && this.values(1) == o.min) { - closestHandle = $(this.handles[++index]); - } - - this._start(event, index); - - self._handleIndex = index; - - closestHandle - .addClass("ui-state-active") - .focus(); - - var offset = closestHandle.offset(); - var mouseOverHandle = !$(event.target).parents().andSelf().is('.ui-slider-handle'); - this._clickOffset = mouseOverHandle ? { left: 0, top: 0 } : { - left: event.pageX - offset.left - (closestHandle.width() / 2), - top: event.pageY - offset.top - - (closestHandle.height() / 2) - - (parseInt(closestHandle.css('borderTopWidth'),10) || 0) - - (parseInt(closestHandle.css('borderBottomWidth'),10) || 0) - + (parseInt(closestHandle.css('marginTop'),10) || 0) - }; - - normValue = this._normValueFromMouse(position); - this._slide(event, index, normValue); - return true; - - }, - - _mouseStart: function(event) { - return true; - }, - - _mouseDrag: function(event) { - - var position = { x: event.pageX, y: event.pageY }; - var normValue = this._normValueFromMouse(position); - - this._slide(event, this._handleIndex, normValue); - - return false; - - }, - - _mouseStop: function(event) { - - this.handles.removeClass("ui-state-active"); - this._stop(event, this._handleIndex); - this._change(event, this._handleIndex); - this._handleIndex = null; - this._clickOffset = null; - - return false; - - }, - - _detectOrientation: function() { - this.orientation = this.options.orientation == 'vertical' ? 'vertical' : 'horizontal'; - }, - - _normValueFromMouse: function(position) { - - var pixelTotal, pixelMouse; - if ('horizontal' == this.orientation) { - pixelTotal = this.elementSize.width; - pixelMouse = position.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0); - } else { - pixelTotal = this.elementSize.height; - pixelMouse = position.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0); - } - - var percentMouse = (pixelMouse / pixelTotal); - if (percentMouse > 1) percentMouse = 1; - if (percentMouse < 0) percentMouse = 0; - if ('vertical' == this.orientation) - percentMouse = 1 - percentMouse; - - var valueTotal = this._valueMax() - this._valueMin(), - valueMouse = percentMouse * valueTotal, - valueMouseModStep = valueMouse % this.options.step, - normValue = this._valueMin() + valueMouse - valueMouseModStep; - - if (valueMouseModStep > (this.options.step / 2)) - normValue += this.options.step; - - // Since JavaScript has problems with large floats, round - // the final value to 5 digits after the decimal point (see #4124) - return parseFloat(normValue.toFixed(5)); - - }, - - _start: function(event, index) { - this._trigger("start", event, this._uiHash(index)); - }, - - _slide: function(event, index, newVal) { - - var handle = this.handles[index]; - - if (this.options.values && this.options.values.length) { - - var otherVal = this.values(index ? 0 : 1); - - if ((index == 0 && newVal >= otherVal) || (index == 1 && newVal <= otherVal)) - newVal = otherVal; - - if (newVal != this.values(index)) { - var newValues = this.values(); - newValues[index] = newVal; - // A slide can be canceled by returning false from the slide callback - var allowed = this._trigger("slide", event, this._uiHash(index, newVal, newValues)); - var otherVal = this.values(index ? 0 : 1); - if (allowed !== false) { - this.values(index, newVal, ( event.type == 'mousedown' && this.options.animate ), true); - } - } - - } else { - - if (newVal != this.value()) { - // A slide can be canceled by returning false from the slide callback - var allowed = this._trigger("slide", event, this._uiHash(index, newVal)); - if (allowed !== false) { - this._setData('value', newVal, ( event.type == 'mousedown' && this.options.animate )); - } - - } - - } - - }, - - _stop: function(event, index) { - this._trigger("stop", event, this._uiHash(index)); - }, - - _change: function(event, index) { - this._trigger("change", event, this._uiHash(index)); - }, - - value: function(newValue) { - - if (arguments.length) { - this._setData("value", newValue); - this._change(null, 0); - } - - return this._value(); - - }, - - values: function(index, newValue, animated, noPropagation) { - - if (arguments.length > 1) { - this.options.values[index] = newValue; - this._refreshValue(animated); - if(!noPropagation) this._change(null, index); - } - - if (arguments.length) { - if (this.options.values && this.options.values.length) { - return this._values(index); - } else { - return this.value(); - } - } else { - return this._values(); - } - - }, - - _setData: function(key, value, animated) { - - $.widget.prototype._setData.apply(this, arguments); - - switch (key) { - case 'orientation': - - this._detectOrientation(); - - this.element - .removeClass("ui-slider-horizontal ui-slider-vertical") - .addClass("ui-slider-" + this.orientation); - this._refreshValue(animated); - break; - case 'value': - this._refreshValue(animated); - break; - } - - }, - - _step: function() { - var step = this.options.step; - return step; - }, - - _value: function() { - - var val = this.options.value; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - - }, - - _values: function(index) { - - if (arguments.length) { - var val = this.options.values[index]; - if (val < this._valueMin()) val = this._valueMin(); - if (val > this._valueMax()) val = this._valueMax(); - - return val; - } else { - return this.options.values; - } - - }, - - _valueMin: function() { - var valueMin = this.options.min; - return valueMin; - }, - - _valueMax: function() { - var valueMax = this.options.max; - return valueMax; - }, - - _refreshValue: function(animate) { - - var oRange = this.options.range, o = this.options, self = this; - - if (this.options.values && this.options.values.length) { - var vp0, vp1; - this.handles.each(function(i, j) { - var valPercent = (self.values(i) - self._valueMin()) / (self._valueMax() - self._valueMin()) * 100; - var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%'; - $(this).stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate); - if (self.options.range === true) { - if (self.orientation == 'horizontal') { - (i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ left: valPercent + '%' }, o.animate); - (i == 1) && self.range[animate ? 'animate' : 'css']({ width: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate }); - } else { - (i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ bottom: (valPercent) + '%' }, o.animate); - (i == 1) && self.range[animate ? 'animate' : 'css']({ height: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate }); - } - } - lastValPercent = valPercent; - }); - } else { - var value = this.value(), - valueMin = this._valueMin(), - valueMax = this._valueMax(), - valPercent = valueMax != valueMin - ? (value - valueMin) / (valueMax - valueMin) * 100 - : 0; - var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%'; - this.handle.stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate); - - (oRange == "min") && (this.orientation == "horizontal") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ width: valPercent + '%' }, o.animate); - (oRange == "max") && (this.orientation == "horizontal") && this.range[animate ? 'animate' : 'css']({ width: (100 - valPercent) + '%' }, { queue: false, duration: o.animate }); - (oRange == "min") && (this.orientation == "vertical") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ height: valPercent + '%' }, o.animate); - (oRange == "max") && (this.orientation == "vertical") && this.range[animate ? 'animate' : 'css']({ height: (100 - valPercent) + '%' }, { queue: false, duration: o.animate }); - } - - }, - - _uiHash: function(index, value, values) { - - var multiple = this.options.values && this.options.values.length; - return { - handle: this.handles[index], - value: value || (multiple ? this.values(index) : this.value()), - values: values || (multiple && this.values()) - }; - - } - -})); - -$.extend($.ui.slider, { - getter: "value values", - version: "1.7", - eventPrefix: "slide", - defaults: { - animate: false, - delay: 0, - distance: 0, - max: 100, - min: 0, - orientation: 'horizontal', - range: false, - step: 1, - value: 0, - values: null - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.sortable.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.sortable.js deleted file mode 100644 index b18d52e..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.sortable.js +++ /dev/null @@ -1,1019 +0,0 @@ -/* - * jQuery UI Sortable 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Sortables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.sortable", $.extend({}, $.ui.mouse, { - _init: function() { - - var o = this.options; - this.containerCache = {}; - this.element.addClass("ui-sortable"); - - //Get the items - this.refresh(); - - //Let's determine if the items are floating - this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) : false; - - //Let's determine the parent's offset - this.offset = this.element.offset(); - - //Initialize mouse events for interaction - this._mouseInit(); - - }, - - destroy: function() { - this.element - .removeClass("ui-sortable ui-sortable-disabled") - .removeData("sortable") - .unbind(".sortable"); - this._mouseDestroy(); - - for ( var i = this.items.length - 1; i >= 0; i-- ) - this.items[i].item.removeData("sortable-item"); - }, - - _mouseCapture: function(event, overrideHandle) { - - if (this.reverting) { - return false; - } - - if(this.options.disabled || this.options.type == 'static') return false; - - //We have to refresh the items data once first - this._refreshItems(event); - - //Find out if the clicked node (or one of its parents) is a actual item in this.items - var currentItem = null, self = this, nodes = $(event.target).parents().each(function() { - if($.data(this, 'sortable-item') == self) { - currentItem = $(this); - return false; - } - }); - if($.data(event.target, 'sortable-item') == self) currentItem = $(event.target); - - if(!currentItem) return false; - if(this.options.handle && !overrideHandle) { - var validHandle = false; - - $(this.options.handle, currentItem).find("*").andSelf().each(function() { if(this == event.target) validHandle = true; }); - if(!validHandle) return false; - } - - this.currentItem = currentItem; - this._removeCurrentsFromItems(); - return true; - - }, - - _mouseStart: function(event, overrideHandle, noActivation) { - - var o = this.options, self = this; - this.currentContainer = this; - - //We only need to call refreshPositions, because the refreshItems call has been moved to mouseCapture - this.refreshPositions(); - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Get the next scrolling parent - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.currentItem.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - // Only after we got the offset, we can change the helper's position to absolute - // TODO: Still need to figure out a way to make relative sorting possible - this.helper.css("position", "absolute"); - this.cssPosition = this.helper.css("position"); - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Cache the former DOM position - this.domPosition = { prev: this.currentItem.prev()[0], parent: this.currentItem.parent()[0] }; - - //If the helper is not the original, hide the original so it's not playing any role during the drag, won't cause anything bad this way - if(this.helper[0] != this.currentItem[0]) { - this.currentItem.hide(); - } - - //Create the placeholder - this._createPlaceholder(); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - if(o.cursor) { // cursor option - if ($('body').css("cursor")) this._storedCursor = $('body').css("cursor"); - $('body').css("cursor", o.cursor); - } - - if(o.opacity) { // opacity option - if (this.helper.css("opacity")) this._storedOpacity = this.helper.css("opacity"); - this.helper.css("opacity", o.opacity); - } - - if(o.zIndex) { // zIndex option - if (this.helper.css("zIndex")) this._storedZIndex = this.helper.css("zIndex"); - this.helper.css("zIndex", o.zIndex); - } - - //Prepare scrolling - if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML') - this.overflowOffset = this.scrollParent.offset(); - - //Call callbacks - this._trigger("start", event, this._uiHash()); - - //Recache the helper size - if(!this._preserveHelperProportions) - this._cacheHelperProportions(); - - - //Post 'activate' events to possible containers - if(!noActivation) { - for (var i = this.containers.length - 1; i >= 0; i--) { this.containers[i]._trigger("activate", event, self._uiHash(this)); } - } - - //Prepare possible droppables - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.dragging = true; - - this.helper.addClass("ui-sortable-helper"); - this._mouseDrag(event); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - - }, - - _mouseDrag: function(event) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - if (!this.lastPositionAbs) { - this.lastPositionAbs = this.positionAbs; - } - - //Do scrolling - if(this.options.scroll) { - var o = this.options, scrolled = false; - if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML') { - - if((this.overflowOffset.top + this.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - this.overflowOffset.top < o.scrollSensitivity) - this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop - o.scrollSpeed; - - if((this.overflowOffset.left + this.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - this.overflowOffset.left < o.scrollSensitivity) - this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft - o.scrollSpeed; - - } else { - - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - } - - //Regenerate the absolute position used for position checks - this.positionAbs = this._convertPositionTo("absolute"); - - //Set the helper 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'; - - //Rearrange - for (var i = this.items.length - 1; i >= 0; i--) { - - //Cache variables and intersection, continue if no intersection - var item = this.items[i], itemElement = item.item[0], intersection = this._intersectsWithPointer(item); - if (!intersection) continue; - - if(itemElement != this.currentItem[0] //cannot intersect with itself - && this.placeholder[intersection == 1 ? "next" : "prev"]()[0] != itemElement //no useless actions that have been done before - && !$.ui.contains(this.placeholder[0], itemElement) //no action if the item moved is the parent of the item checked - && (this.options.type == 'semi-dynamic' ? !$.ui.contains(this.element[0], itemElement) : true) - ) { - - this.direction = intersection == 1 ? "down" : "up"; - - if (this.options.tolerance == "pointer" || this._intersectsWithSides(item)) { - this._rearrange(event, item); - } else { - break; - } - - this._trigger("change", event, this._uiHash()); - break; - } - } - - //Post events to containers - this._contactContainers(event); - - //Interconnect with droppables - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - //Call callbacks - this._trigger('sort', event, this._uiHash()); - - this.lastPositionAbs = this.positionAbs; - return false; - - }, - - _mouseStop: function(event, noPropagation) { - - if(!event) return; - - //If we are using droppables, inform the manager about the drop - if ($.ui.ddmanager && !this.options.dropBehaviour) - $.ui.ddmanager.drop(this, event); - - if(this.options.revert) { - var self = this; - var cur = self.placeholder.offset(); - - self.reverting = true; - - $(this.helper).animate({ - left: cur.left - this.offset.parent.left - self.margins.left + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollLeft), - top: cur.top - this.offset.parent.top - self.margins.top + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollTop) - }, parseInt(this.options.revert, 10) || 500, function() { - self._clear(event); - }); - } else { - this._clear(event, noPropagation); - } - - return false; - - }, - - cancel: function() { - - var self = this; - - if(this.dragging) { - - this._mouseUp(); - - if(this.options.helper == "original") - this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"); - else - this.currentItem.show(); - - //Post deactivating events to containers - for (var i = this.containers.length - 1; i >= 0; i--){ - this.containers[i]._trigger("deactivate", null, self._uiHash(this)); - if(this.containers[i].containerCache.over) { - this.containers[i]._trigger("out", null, self._uiHash(this)); - this.containers[i].containerCache.over = 0; - } - } - - } - - //$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node! - if(this.placeholder[0].parentNode) this.placeholder[0].parentNode.removeChild(this.placeholder[0]); - if(this.options.helper != "original" && this.helper && this.helper[0].parentNode) this.helper.remove(); - - $.extend(this, { - helper: null, - dragging: false, - reverting: false, - _noFinalSort: null - }); - - if(this.domPosition.prev) { - $(this.domPosition.prev).after(this.currentItem); - } else { - $(this.domPosition.parent).prepend(this.currentItem); - } - - return true; - - }, - - serialize: function(o) { - - var items = this._getItemsAsjQuery(o && o.connected); - var str = []; o = o || {}; - - $(items).each(function() { - var res = ($(o.item || this).attr(o.attribute || 'id') || '').match(o.expression || (/(.+)[-=_](.+)/)); - if(res) str.push((o.key || res[1]+'[]')+'='+(o.key && o.expression ? res[1] : res[2])); - }); - - return str.join('&'); - - }, - - toArray: function(o) { - - var items = this._getItemsAsjQuery(o && o.connected); - var ret = []; o = o || {}; - - items.each(function() { ret.push($(o.item || this).attr(o.attribute || 'id') || ''); }); - return ret; - - }, - - /* Be careful with the following core functions */ - _intersectsWith: function(item) { - - var x1 = this.positionAbs.left, - x2 = x1 + this.helperProportions.width, - y1 = this.positionAbs.top, - y2 = y1 + this.helperProportions.height; - - var l = item.left, - r = l + item.width, - t = item.top, - b = t + item.height; - - var dyClick = this.offset.click.top, - dxClick = this.offset.click.left; - - var isOverElement = (y1 + dyClick) > t && (y1 + dyClick) < b && (x1 + dxClick) > l && (x1 + dxClick) < r; - - if( this.options.tolerance == "pointer" - || this.options.forcePointerForContainers - || (this.options.tolerance != "pointer" && this.helperProportions[this.floating ? 'width' : 'height'] > item[this.floating ? 'width' : 'height']) - ) { - return isOverElement; - } else { - - return (l < x1 + (this.helperProportions.width / 2) // Right Half - && x2 - (this.helperProportions.width / 2) < r // Left Half - && t < y1 + (this.helperProportions.height / 2) // Bottom Half - && y2 - (this.helperProportions.height / 2) < b ); // Top Half - - } - }, - - _intersectsWithPointer: function(item) { - - var isOverElementHeight = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top, item.height), - isOverElementWidth = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left, item.width), - isOverElement = isOverElementHeight && isOverElementWidth, - verticalDirection = this._getDragVerticalDirection(), - horizontalDirection = this._getDragHorizontalDirection(); - - if (!isOverElement) - return false; - - return this.floating ? - ( ((horizontalDirection && horizontalDirection == "right") || verticalDirection == "down") ? 2 : 1 ) - : ( verticalDirection && (verticalDirection == "down" ? 2 : 1) ); - - }, - - _intersectsWithSides: function(item) { - - var isOverBottomHalf = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top + (item.height/2), item.height), - isOverRightHalf = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left + (item.width/2), item.width), - verticalDirection = this._getDragVerticalDirection(), - horizontalDirection = this._getDragHorizontalDirection(); - - if (this.floating && horizontalDirection) { - return ((horizontalDirection == "right" && isOverRightHalf) || (horizontalDirection == "left" && !isOverRightHalf)); - } else { - return verticalDirection && ((verticalDirection == "down" && isOverBottomHalf) || (verticalDirection == "up" && !isOverBottomHalf)); - } - - }, - - _getDragVerticalDirection: function() { - var delta = this.positionAbs.top - this.lastPositionAbs.top; - return delta != 0 && (delta > 0 ? "down" : "up"); - }, - - _getDragHorizontalDirection: function() { - var delta = this.positionAbs.left - this.lastPositionAbs.left; - return delta != 0 && (delta > 0 ? "right" : "left"); - }, - - refresh: function(event) { - this._refreshItems(event); - this.refreshPositions(); - }, - - _connectWith: function() { - var options = this.options; - return options.connectWith.constructor == String - ? [options.connectWith] - : options.connectWith; - }, - - _getItemsAsjQuery: function(connected) { - - var self = this; - var items = []; - var queries = []; - var connectWith = this._connectWith(); - - if(connectWith && connected) { - for (var i = connectWith.length - 1; i >= 0; i--){ - var cur = $(connectWith[i]); - for (var j = cur.length - 1; j >= 0; j--){ - var inst = $.data(cur[j], 'sortable'); - if(inst && inst != this && !inst.options.disabled) { - queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element) : $(inst.options.items, inst.element).not(".ui-sortable-helper"), inst]); - } - }; - }; - } - - queries.push([$.isFunction(this.options.items) ? this.options.items.call(this.element, null, { options: this.options, item: this.currentItem }) : $(this.options.items, this.element).not(".ui-sortable-helper"), this]); - - for (var i = queries.length - 1; i >= 0; i--){ - queries[i][0].each(function() { - items.push(this); - }); - }; - - return $(items); - - }, - - _removeCurrentsFromItems: function() { - - var list = this.currentItem.find(":data(sortable-item)"); - - for (var i=0; i < this.items.length; i++) { - - for (var j=0; j < list.length; j++) { - if(list[j] == this.items[i].item[0]) - this.items.splice(i,1); - }; - - }; - - }, - - _refreshItems: function(event) { - - this.items = []; - this.containers = [this]; - var items = this.items; - var self = this; - var queries = [[$.isFunction(this.options.items) ? this.options.items.call(this.element[0], event, { item: this.currentItem }) : $(this.options.items, this.element), this]]; - var connectWith = this._connectWith(); - - if(connectWith) { - for (var i = connectWith.length - 1; i >= 0; i--){ - var cur = $(connectWith[i]); - for (var j = cur.length - 1; j >= 0; j--){ - var inst = $.data(cur[j], 'sortable'); - if(inst && inst != this && !inst.options.disabled) { - queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element[0], event, { item: this.currentItem }) : $(inst.options.items, inst.element), inst]); - this.containers.push(inst); - } - }; - }; - } - - for (var i = queries.length - 1; i >= 0; i--) { - var targetData = queries[i][1]; - var _queries = queries[i][0]; - - for (var j=0, queriesLength = _queries.length; j < queriesLength; j++) { - var item = $(_queries[j]); - - item.data('sortable-item', targetData); // Data for target checking (mouse manager) - - items.push({ - item: item, - instance: targetData, - width: 0, height: 0, - left: 0, top: 0 - }); - }; - }; - - }, - - refreshPositions: function(fast) { - - //This has to be redone because due to the item being moved out/into the offsetParent, the offsetParent's position will change - if(this.offsetParent && this.helper) { - this.offset.parent = this._getParentOffset(); - } - - for (var i = this.items.length - 1; i >= 0; i--){ - var item = this.items[i]; - - //We ignore calculating positions of all connected containers when we're not over them - if(item.instance != this.currentContainer && this.currentContainer && item.item[0] != this.currentItem[0]) - continue; - - var t = this.options.toleranceElement ? $(this.options.toleranceElement, item.item) : item.item; - - if (!fast) { - item.width = t.outerWidth(); - item.height = t.outerHeight(); - } - - var p = t.offset(); - item.left = p.left; - item.top = p.top; - }; - - if(this.options.custom && this.options.custom.refreshContainers) { - this.options.custom.refreshContainers.call(this); - } else { - for (var i = this.containers.length - 1; i >= 0; i--){ - var p = this.containers[i].element.offset(); - this.containers[i].containerCache.left = p.left; - this.containers[i].containerCache.top = p.top; - this.containers[i].containerCache.width = this.containers[i].element.outerWidth(); - this.containers[i].containerCache.height = this.containers[i].element.outerHeight(); - }; - } - - }, - - _createPlaceholder: function(that) { - - var self = that || this, o = self.options; - - if(!o.placeholder || o.placeholder.constructor == String) { - var className = o.placeholder; - o.placeholder = { - element: function() { - - var el = $(document.createElement(self.currentItem[0].nodeName)) - .addClass(className || self.currentItem[0].className+" ui-sortable-placeholder") - .removeClass("ui-sortable-helper")[0]; - - if(!className) - el.style.visibility = "hidden"; - - return el; - }, - update: function(container, p) { - - // 1. If a className is set as 'placeholder option, we don't force sizes - the class is responsible for that - // 2. The option 'forcePlaceholderSize can be enabled to force it even if a class name is specified - if(className && !o.forcePlaceholderSize) return; - - //If the element doesn't have a actual height by itself (without styles coming from a stylesheet), it receives the inline height from the dragged item - if(!p.height()) { p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css('paddingTop')||0, 10) - parseInt(self.currentItem.css('paddingBottom')||0, 10)); }; - if(!p.width()) { p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css('paddingLeft')||0, 10) - parseInt(self.currentItem.css('paddingRight')||0, 10)); }; - } - }; - } - - //Create the placeholder - self.placeholder = $(o.placeholder.element.call(self.element, self.currentItem)); - - //Append it after the actual current item - self.currentItem.after(self.placeholder); - - //Update the size of the placeholder (TODO: Logic to fuzzy, see line 316/317) - o.placeholder.update(self, self.placeholder); - - }, - - _contactContainers: function(event) { - for (var i = this.containers.length - 1; i >= 0; i--){ - - if(this._intersectsWith(this.containers[i].containerCache)) { - if(!this.containers[i].containerCache.over) { - - if(this.currentContainer != this.containers[i]) { - - //When entering a new container, we will find the item with the least distance and append our item near it - var dist = 10000; var itemWithLeastDistance = null; var base = this.positionAbs[this.containers[i].floating ? 'left' : 'top']; - for (var j = this.items.length - 1; j >= 0; j--) { - if(!$.ui.contains(this.containers[i].element[0], this.items[j].item[0])) continue; - var cur = this.items[j][this.containers[i].floating ? 'left' : 'top']; - if(Math.abs(cur - base) < dist) { - dist = Math.abs(cur - base); itemWithLeastDistance = this.items[j]; - } - } - - if(!itemWithLeastDistance && !this.options.dropOnEmpty) //Check if dropOnEmpty is enabled - continue; - - this.currentContainer = this.containers[i]; - itemWithLeastDistance ? this._rearrange(event, itemWithLeastDistance, null, true) : this._rearrange(event, null, this.containers[i].element, true); - this._trigger("change", event, this._uiHash()); - this.containers[i]._trigger("change", event, this._uiHash(this)); - - //Update the placeholder - this.options.placeholder.update(this.currentContainer, this.placeholder); - - } - - this.containers[i]._trigger("over", event, this._uiHash(this)); - this.containers[i].containerCache.over = 1; - } - } else { - if(this.containers[i].containerCache.over) { - this.containers[i]._trigger("out", event, this._uiHash(this)); - this.containers[i].containerCache.over = 0; - } - } - - }; - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event, this.currentItem])) : (o.helper == 'clone' ? this.currentItem.clone() : this.currentItem); - - if(!helper.parents('body').length) //Add the helper to the DOM if that didn't happen already - $(o.appendTo != 'parent' ? o.appendTo : this.currentItem[0].parentNode)[0].appendChild(helper[0]); - - if(helper[0] == this.currentItem[0]) - this._storedCSS = { width: this.currentItem[0].style.width, height: this.currentItem[0].style.height, position: this.currentItem.css("position"), top: this.currentItem.css("top"), left: this.currentItem.css("left") }; - - if(helper[0].style.width == '' || o.forceHelperSize) helper.width(this.currentItem.width()); - if(helper[0].style.height == '' || o.forceHelperSize) helper.height(this.currentItem.height()); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.currentItem.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.currentItem.css("marginLeft"),10) || 0), - top: (parseInt(this.currentItem.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment)) { - var ce = $(o.containment)[0]; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _rearrange: function(event, i, a, hardRefresh) { - - a ? a[0].appendChild(this.placeholder[0]) : i.item[0].parentNode.insertBefore(this.placeholder[0], (this.direction == 'down' ? i.item[0] : i.item[0].nextSibling)); - - //Various things done here to improve the performance: - // 1. we create a setTimeout, that calls refreshPositions - // 2. on the instance, we have a counter variable, that get's higher after every append - // 3. on the local scope, we copy the counter variable, and check in the timeout, if it's still the same - // 4. this lets only the last addition to the timeout stack through - this.counter = this.counter ? ++this.counter : 1; - var self = this, counter = this.counter; - - window.setTimeout(function() { - if(counter == self.counter) self.refreshPositions(!hardRefresh); //Precompute after each DOM insertion, NOT on mousemove - },0); - - }, - - _clear: function(event, noPropagation) { - - this.reverting = false; - // We delay all events that have to be triggered to after the point where the placeholder has been removed and - // everything else normalized again - var delayedTriggers = [], self = this; - - // We first have to update the dom position of the actual currentItem - // Note: don't do it if the current item is already removed (by a user), or it gets reappended (see #4088) - if(!this._noFinalSort && this.currentItem[0].parentNode) this.placeholder.before(this.currentItem); - this._noFinalSort = null; - - if(this.helper[0] == this.currentItem[0]) { - for(var i in this._storedCSS) { - if(this._storedCSS[i] == 'auto' || this._storedCSS[i] == 'static') this._storedCSS[i] = ''; - } - this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"); - } else { - this.currentItem.show(); - } - - if(this.fromOutside && !noPropagation) delayedTriggers.push(function(event) { this._trigger("receive", event, this._uiHash(this.fromOutside)); }); - if((this.fromOutside || this.domPosition.prev != this.currentItem.prev().not(".ui-sortable-helper")[0] || this.domPosition.parent != this.currentItem.parent()[0]) && !noPropagation) delayedTriggers.push(function(event) { this._trigger("update", event, this._uiHash()); }); //Trigger update callback if the DOM position has changed - if(!$.ui.contains(this.element[0], this.currentItem[0])) { //Node was moved out of the current element - if(!noPropagation) delayedTriggers.push(function(event) { this._trigger("remove", event, this._uiHash()); }); - for (var i = this.containers.length - 1; i >= 0; i--){ - if($.ui.contains(this.containers[i].element[0], this.currentItem[0]) && !noPropagation) { - delayedTriggers.push((function(c) { return function(event) { c._trigger("receive", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - delayedTriggers.push((function(c) { return function(event) { c._trigger("update", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - } - }; - }; - - //Post events to containers - for (var i = this.containers.length - 1; i >= 0; i--){ - if(!noPropagation) delayedTriggers.push((function(c) { return function(event) { c._trigger("deactivate", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - if(this.containers[i].containerCache.over) { - delayedTriggers.push((function(c) { return function(event) { c._trigger("out", event, this._uiHash(this)); }; }).call(this, this.containers[i])); - this.containers[i].containerCache.over = 0; - } - } - - //Do what was originally in plugins - if(this._storedCursor) $('body').css("cursor", this._storedCursor); //Reset cursor - if(this._storedOpacity) this.helper.css("opacity", this._storedOpacity); //Reset cursor - if(this._storedZIndex) this.helper.css("zIndex", this._storedZIndex == 'auto' ? '' : this._storedZIndex); //Reset z-index - - this.dragging = false; - if(this.cancelHelperRemoval) { - if(!noPropagation) { - this._trigger("beforeStop", event, this._uiHash()); - for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events - this._trigger("stop", event, this._uiHash()); - } - return false; - } - - if(!noPropagation) this._trigger("beforeStop", event, this._uiHash()); - - //$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node! - this.placeholder[0].parentNode.removeChild(this.placeholder[0]); - - if(this.helper[0] != this.currentItem[0]) this.helper.remove(); this.helper = null; - - if(!noPropagation) { - for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events - this._trigger("stop", event, this._uiHash()); - } - - this.fromOutside = false; - return true; - - }, - - _trigger: function() { - if ($.widget.prototype._trigger.apply(this, arguments) === false) { - this.cancel(); - } - }, - - _uiHash: function(inst) { - var self = inst || this; - return { - helper: self.helper, - placeholder: self.placeholder || $([]), - position: self.position, - absolutePosition: self.positionAbs, //deprecated - offset: self.positionAbs, - item: self.currentItem, - sender: inst ? inst.element : null - }; - } - -})); - -$.extend($.ui.sortable, { - getter: "serialize toArray", - version: "1.7", - eventPrefix: "sort", - defaults: { - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectWith: false, - containment: false, - cursor: 'auto', - cursorAt: false, - delay: 0, - distance: 1, - dropOnEmpty: true, - forcePlaceholderSize: false, - forceHelperSize: false, - grid: false, - handle: false, - helper: "original", - items: '> *', - opacity: false, - placeholder: false, - revert: false, - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - scope: "default", - tolerance: "intersect", - zIndex: 1000 - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.tabs.js b/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.tabs.js deleted file mode 100644 index 15e9c9a..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/jquery/ui/ui.tabs.js +++ /dev/null @@ -1,685 +0,0 @@ -/* - * jQuery UI Tabs 1.7 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Tabs - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.tabs", { - - _init: function() { - if (this.options.deselectable !== undefined) { - this.options.collapsible = this.options.deselectable; - } - this._tabify(true); - }, - - _setData: function(key, value) { - if (key == 'selected') { - if (this.options.collapsible && value == this.options.selected) { - return; - } - this.select(value); - } - else { - this.options[key] = value; - if (key == 'deselectable') { - this.options.collapsible = value; - } - this._tabify(); - } - }, - - _tabId: function(a) { - return a.title && a.title.replace(/\s/g, '_').replace(/[^A-Za-z0-9\-_:\.]/g, '') || - this.options.idPrefix + $.data(a); - }, - - _sanitizeSelector: function(hash) { - return hash.replace(/:/g, '\\:'); // we need this because an id may contain a ":" - }, - - _cookie: function() { - var cookie = this.cookie || (this.cookie = this.options.cookie.name || 'ui-tabs-' + $.data(this.list[0])); - return $.cookie.apply(null, [cookie].concat($.makeArray(arguments))); - }, - - _ui: function(tab, panel) { - return { - tab: tab, - panel: panel, - index: this.anchors.index(tab) - }; - }, - - _cleanup: function() { - // restore all former loading tabs labels - this.lis.filter('.ui-state-processing').removeClass('ui-state-processing') - .find('span:data(label.tabs)') - .each(function() { - var el = $(this); - el.html(el.data('label.tabs')).removeData('label.tabs'); - }); - }, - - _tabify: function(init) { - - this.list = this.element.children('ul:first'); - this.lis = $('li:has(a[href])', this.list); - this.anchors = this.lis.map(function() { return $('a', this)[0]; }); - this.panels = $([]); - - var self = this, o = this.options; - - var fragmentId = /^#.+/; // Safari 2 reports '#' for an empty hash - this.anchors.each(function(i, a) { - var href = $(a).attr('href'); - - // For dynamically created HTML that contains a hash as href IE < 8 expands - // such href to the full page url with hash and then misinterprets tab as ajax. - // Same consideration applies for an added tab with a fragment identifier - // since a[href=#fragment-identifier] does unexpectedly not match. - // Thus normalize href attribute... - var hrefBase = href.split('#')[0], baseEl; - if (hrefBase && (hrefBase === location.toString().split('#')[0] || - (baseEl = $('base')[0]) && hrefBase === baseEl.href)) { - href = a.hash; - a.href = href; - } - - // inline tab - if (fragmentId.test(href)) { - self.panels = self.panels.add(self._sanitizeSelector(href)); - } - - // remote tab - else if (href != '#') { // prevent loading the page itself if href is just "#" - $.data(a, 'href.tabs', href); // required for restore on destroy - - // TODO until #3808 is fixed strip fragment identifier from url - // (IE fails to load from such url) - $.data(a, 'load.tabs', href.replace(/#.*$/, '')); // mutable data - - var id = self._tabId(a); - a.href = '#' + id; - var $panel = $('#' + id); - if (!$panel.length) { - $panel = $(o.panelTemplate).attr('id', id).addClass('ui-tabs-panel ui-widget-content ui-corner-bottom') - .insertAfter(self.panels[i - 1] || self.list); - $panel.data('destroy.tabs', true); - } - self.panels = self.panels.add($panel); - } - - // invalid tab href - else { - o.disabled.push(i); - } - }); - - // initialization from scratch - if (init) { - - // attach necessary classes for styling - 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'); - - // Selected tab - // use "selected" option or try to retrieve: - // 1. from fragment identifier in url - // 2. from cookie - // 3. from selected class attribute on
  • - if (o.selected === undefined) { - if (location.hash) { - this.anchors.each(function(i, a) { - if (a.hash == location.hash) { - o.selected = i; - return false; // break - } - }); - } - if (typeof o.selected != 'number' && o.cookie) { - o.selected = parseInt(self._cookie(), 10); - } - if (typeof o.selected != 'number' && this.lis.filter('.ui-tabs-selected').length) { - o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected')); - } - o.selected = o.selected || 0; - } - else if (o.selected === null) { // usage of null is deprecated, TODO remove in next release - o.selected = -1; - } - - // sanity check - default to first tab... - o.selected = ((o.selected >= 0 && this.anchors[o.selected]) || o.selected < 0) ? o.selected : 0; - - // Take disabling tabs via class attribute from HTML - // into account and update option properly. - // A selected tab cannot become disabled. - o.disabled = $.unique(o.disabled.concat( - $.map(this.lis.filter('.ui-state-disabled'), - function(n, i) { return self.lis.index(n); } ) - )).sort(); - - if ($.inArray(o.selected, o.disabled) != -1) { - o.disabled.splice($.inArray(o.selected, o.disabled), 1); - } - - // highlight selected tab - this.panels.addClass('ui-tabs-hide'); - this.lis.removeClass('ui-tabs-selected ui-state-active'); - if (o.selected >= 0 && this.anchors.length) { // check for length avoids error when initializing empty list - this.panels.eq(o.selected).removeClass('ui-tabs-hide'); - this.lis.eq(o.selected).addClass('ui-tabs-selected ui-state-active'); - - // seems to be expected behavior that the show callback is fired - self.element.queue("tabs", function() { - self._trigger('show', null, self._ui(self.anchors[o.selected], self.panels[o.selected])); - }); - - this.load(o.selected); - } - - // clean up to avoid memory leaks in certain versions of IE 6 - $(window).bind('unload', function() { - self.lis.add(self.anchors).unbind('.tabs'); - self.lis = self.anchors = self.panels = null; - }); - - } - // update selected after add/remove - else { - o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected')); - } - - // update collapsible - this.element[o.collapsible ? 'addClass' : 'removeClass']('ui-tabs-collapsible'); - - // set or update cookie after init and add/remove respectively - if (o.cookie) { - this._cookie(o.selected, o.cookie); - } - - // disable tabs - for (var i = 0, li; (li = this.lis[i]); i++) { - $(li)[$.inArray(i, o.disabled) != -1 && - !$(li).hasClass('ui-tabs-selected') ? 'addClass' : 'removeClass']('ui-state-disabled'); - } - - // reset cache if switching from cached to not cached - if (o.cache === false) { - this.anchors.removeData('cache.tabs'); - } - - // remove all handlers before, tabify may run on existing tabs after add or option change - this.lis.add(this.anchors).unbind('.tabs'); - - if (o.event != 'mouseover') { - var addState = function(state, el) { - if (el.is(':not(.ui-state-disabled)')) { - el.addClass('ui-state-' + state); - } - }; - var removeState = function(state, el) { - el.removeClass('ui-state-' + state); - }; - this.lis.bind('mouseover.tabs', function() { - addState('hover', $(this)); - }); - this.lis.bind('mouseout.tabs', function() { - removeState('hover', $(this)); - }); - this.anchors.bind('focus.tabs', function() { - addState('focus', $(this).closest('li')); - }); - this.anchors.bind('blur.tabs', function() { - removeState('focus', $(this).closest('li')); - }); - } - - // set up animations - var hideFx, showFx; - if (o.fx) { - if ($.isArray(o.fx)) { - hideFx = o.fx[0]; - showFx = o.fx[1]; - } - else { - hideFx = showFx = o.fx; - } - } - - // Reset certain styles left over from animation - // and prevent IE's ClearType bug... - function resetStyle($el, fx) { - $el.css({ display: '' }); - if ($.browser.msie && fx.opacity) { - $el[0].style.removeAttribute('filter'); - } - } - - // Show a tab... - var showTab = showFx ? - function(clicked, $show) { - $(clicked).closest('li').removeClass('ui-state-default').addClass('ui-tabs-selected ui-state-active'); - $show.hide().removeClass('ui-tabs-hide') // avoid flicker that way - .animate(showFx, showFx.duration || 'normal', function() { - resetStyle($show, showFx); - self._trigger('show', null, self._ui(clicked, $show[0])); - }); - } : - function(clicked, $show) { - $(clicked).closest('li').removeClass('ui-state-default').addClass('ui-tabs-selected ui-state-active'); - $show.removeClass('ui-tabs-hide'); - self._trigger('show', null, self._ui(clicked, $show[0])); - }; - - // Hide a tab, $show is optional... - var hideTab = hideFx ? - function(clicked, $hide) { - $hide.animate(hideFx, hideFx.duration || 'normal', function() { - self.lis.removeClass('ui-tabs-selected ui-state-active').addClass('ui-state-default'); - $hide.addClass('ui-tabs-hide'); - resetStyle($hide, hideFx); - self.element.dequeue("tabs"); - }); - } : - function(clicked, $hide, $show) { - self.lis.removeClass('ui-tabs-selected ui-state-active').addClass('ui-state-default'); - $hide.addClass('ui-tabs-hide'); - self.element.dequeue("tabs"); - }; - - // attach tab event handler, unbind to avoid duplicates from former tabifying... - this.anchors.bind(o.event + '.tabs', function() { - var el = this, $li = $(this).closest('li'), $hide = self.panels.filter(':not(.ui-tabs-hide)'), - $show = $(self._sanitizeSelector(this.hash)); - - // If tab is already selected and not collapsible or tab disabled or - // or is already loading or click callback returns false stop here. - // Check if click handler returns false last so that it is not executed - // for a disabled or loading tab! - if (($li.hasClass('ui-tabs-selected') && !o.collapsible) || - $li.hasClass('ui-state-disabled') || - $li.hasClass('ui-state-processing') || - self._trigger('select', null, self._ui(this, $show[0])) === false) { - this.blur(); - return false; - } - - o.selected = self.anchors.index(this); - - self.abort(); - - // if tab may be closed - if (o.collapsible) { - if ($li.hasClass('ui-tabs-selected')) { - o.selected = -1; - - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - self.element.queue("tabs", function() { - hideTab(el, $hide); - }).dequeue("tabs"); - - this.blur(); - return false; - } - else if (!$hide.length) { - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - self.element.queue("tabs", function() { - showTab(el, $show); - }); - - self.load(self.anchors.index(this)); // TODO make passing in node possible, see also http://dev.jqueryui.com/ticket/3171 - - this.blur(); - return false; - } - } - - if (o.cookie) { - self._cookie(o.selected, o.cookie); - } - - // show new tab - if ($show.length) { - if ($hide.length) { - self.element.queue("tabs", function() { - hideTab(el, $hide); - }); - } - self.element.queue("tabs", function() { - showTab(el, $show); - }); - - self.load(self.anchors.index(this)); - } - else { - throw 'jQuery UI Tabs: Mismatching fragment identifier.'; - } - - // Prevent IE from keeping other link focussed when using the back button - // and remove dotted border from clicked link. This is controlled via CSS - // in modern browsers; blur() removes focus from address bar in Firefox - // which can become a usability and annoying problem with tabs('rotate'). - if ($.browser.msie) { - this.blur(); - } - - }); - - // disable click in any case - this.anchors.bind('click.tabs', function(){return false;}); - - }, - - destroy: function() { - var o = 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 href = $.data(this, 'href.tabs'); - if (href) { - this.href = href; - } - var $this = $(this).unbind('.tabs'); - $.each(['href', 'load', 'cache'], function(i, prefix) { - $this.removeData(prefix + '.tabs'); - }); - }); - - this.lis.unbind('.tabs').add(this.panels).each(function() { - if ($.data(this, 'destroy.tabs')) { - $(this).remove(); - } - else { - $(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' - ].join(' ')); - } - }); - - if (o.cookie) { - this._cookie(null, o.cookie); - } - }, - - add: function(url, label, index) { - if (index === undefined) { - index = this.anchors.length; // append by default - } - - var self = this, o = this.options, - $li = $(o.tabTemplate.replace(/#\{href\}/g, url).replace(/#\{label\}/g, label)), - id = !url.indexOf('#') ? url.replace('#', '') : this._tabId($('a', $li)[0]); - - $li.addClass('ui-state-default ui-corner-top').data('destroy.tabs', true); - - // try to find an existing element before creating a new one - var $panel = $('#' + id); - if (!$panel.length) { - $panel = $(o.panelTemplate).attr('id', id).data('destroy.tabs', true); - } - $panel.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide'); - - if (index >= this.lis.length) { - $li.appendTo(this.list); - $panel.appendTo(this.list[0].parentNode); - } - else { - $li.insertBefore(this.lis[index]); - $panel.insertBefore(this.panels[index]); - } - - o.disabled = $.map(o.disabled, - function(n, i) { return n >= index ? ++n : n; }); - - this._tabify(); - - if (this.anchors.length == 1) { // after tabify - $li.addClass('ui-tabs-selected ui-state-active'); - $panel.removeClass('ui-tabs-hide'); - this.element.queue("tabs", function() { - self._trigger('show', null, self._ui(self.anchors[0], self.panels[0])); - }); - - this.load(0); - } - - // callback - this._trigger('add', null, this._ui(this.anchors[index], this.panels[index])); - }, - - remove: function(index) { - var o = this.options, $li = this.lis.eq(index).remove(), - $panel = this.panels.eq(index).remove(); - - // If selected tab was removed focus tab to the right or - // in case the last tab was removed the tab to the left. - if ($li.hasClass('ui-tabs-selected') && this.anchors.length > 1) { - this.select(index + (index + 1 < this.anchors.length ? 1 : -1)); - } - - o.disabled = $.map($.grep(o.disabled, function(n, i) { return n != index; }), - function(n, i) { return n >= index ? --n : n; }); - - this._tabify(); - - // callback - this._trigger('remove', null, this._ui($li.find('a')[0], $panel[0])); - }, - - enable: function(index) { - var o = this.options; - if ($.inArray(index, o.disabled) == -1) { - return; - } - - this.lis.eq(index).removeClass('ui-state-disabled'); - o.disabled = $.grep(o.disabled, function(n, i) { return n != index; }); - - // callback - this._trigger('enable', null, this._ui(this.anchors[index], this.panels[index])); - }, - - disable: function(index) { - var self = this, o = this.options; - if (index != o.selected) { // cannot disable already selected tab - this.lis.eq(index).addClass('ui-state-disabled'); - - o.disabled.push(index); - o.disabled.sort(); - - // callback - this._trigger('disable', null, this._ui(this.anchors[index], this.panels[index])); - } - }, - - select: function(index) { - if (typeof index == 'string') { - index = this.anchors.index(this.anchors.filter('[href$=' + index + ']')); - } - else if (index === null) { // usage of null is deprecated, TODO remove in next release - index = -1; - } - if (index == -1 && this.options.collapsible) { - index = this.options.selected; - } - - this.anchors.eq(index).trigger(this.options.event + '.tabs'); - }, - - load: function(index) { - var self = this, o = this.options, a = this.anchors.eq(index)[0], url = $.data(a, 'load.tabs'); - - this.abort(); - - // not remote or from cache - if (!url || this.element.queue("tabs").length !== 0 && $.data(a, 'cache.tabs')) { - this.element.dequeue("tabs"); - return; - } - - // load remote from here on - this.lis.eq(index).addClass('ui-state-processing'); - - if (o.spinner) { - var span = $('span', a); - span.data('label.tabs', span.html()).html(o.spinner); - } - - this.xhr = $.ajax($.extend({}, o.ajaxOptions, { - url: url, - success: function(r, s) { - $(self._sanitizeSelector(a.hash)).html(r); - - // take care of tab labels - self._cleanup(); - - if (o.cache) { - $.data(a, 'cache.tabs', true); // if loaded once do not load them again - } - - // callbacks - self._trigger('load', null, self._ui(self.anchors[index], self.panels[index])); - try { - o.ajaxOptions.success(r, s); - } - catch (e) {} - - // last, so that load event is fired before show... - self.element.dequeue("tabs"); - } - })); - }, - - abort: function() { - // stop possibly running animations - this.element.queue([]); - this.panels.stop(false, true); - - // terminate pending requests from other tabs - if (this.xhr) { - this.xhr.abort(); - delete this.xhr; - } - - // take care of tab labels - this._cleanup(); - - }, - - url: function(index, url) { - this.anchors.eq(index).removeData('cache.tabs').data('load.tabs', url); - }, - - length: function() { - return this.anchors.length; - } - -}); - -$.extend($.ui.tabs, { - version: '1.7', - getter: 'length', - defaults: { - ajaxOptions: null, - cache: false, - cookie: null, // e.g. { expires: 7, path: '/', domain: 'jquery.com', secure: true } - collapsible: false, - disabled: [], - event: 'click', - fx: null, // e.g. { height: 'toggle', opacity: 'toggle', duration: 200 } - idPrefix: 'ui-tabs-', - panelTemplate: '
    ', - spinner: 'Loading…', - tabTemplate: '
  • #{label}
  • ' - } -}); - -/* - * Tabs Extensions - */ - -/* - * Rotate - */ -$.extend($.ui.tabs.prototype, { - rotation: null, - rotate: function(ms, continuing) { - - var self = this, o = this.options; - - var rotate = self._rotate || (self._rotate = function(e) { - clearTimeout(self.rotation); - self.rotation = setTimeout(function() { - var t = o.selected; - self.select( ++t < self.anchors.length ? t : 0 ); - }, ms); - - if (e) { - e.stopPropagation(); - } - }); - - var stop = self._unrotate || (self._unrotate = !continuing ? - function(e) { - if (e.clientX) { // in case of a true click - self.rotate(null); - } - } : - function(e) { - t = o.selected; - rotate(); - }); - - // start rotation - if (ms) { - this.element.bind('tabsshow', rotate); - this.anchors.bind(o.event + '.tabs', stop); - rotate(); - } - // stop rotation - else { - clearTimeout(self.rotation); - this.element.unbind('tabsshow', rotate); - this.anchors.unbind(o.event + '.tabs', stop); - delete this._rotate; - delete this._unrotate; - } - } -}); - -})(jQuery); diff --git a/cl_stream_mybatis/target/classes/static/scripts/json.js b/cl_stream_mybatis/target/classes/static/scripts/json.js deleted file mode 100644 index 9ae240d..0000000 --- a/cl_stream_mybatis/target/classes/static/scripts/json.js +++ /dev/null @@ -1 +0,0 @@ -JSON=new function(){this.decode=function(){var filter,result,self,tmp;if($$("toString")){switch(arguments.length){case 2:self=arguments[0];filter=arguments[1];break;case 1:if($[typeof arguments[0]](arguments[0])===Function){self=this;filter=arguments[0];}else self=arguments[0];break;default:self=this;break;};if(rc.test(self)){try{result=e("(".concat(self,")"));if(filter&&result!==null&&(tmp=$[typeof result](result))&&(tmp===Array||tmp===Object)){for(self in result)result[self]=v(self,result)?filter(self,result[self]):result[self];}}catch(z){}}else{throw new JSONError("bad data");}};return result;};this.encode=function(){var self=arguments.length?arguments[0]:this,result,tmp;if(self===null)result="null";else if(self!==undefined&&(tmp=$[typeof self](self))){switch(tmp){case Array:result=[];for(var i=0,j=0,k=self.length;j - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_service/pom.xml b/cl_stream_service/pom.xml deleted file mode 100644 index c63a7e4..0000000 --- a/cl_stream_service/pom.xml +++ /dev/null @@ -1,314 +0,0 @@ - - - - cl_stream - com.bfd.mf - 2.0-SNAPSHOT - - 4.0.0 - - cl_stream_service - - - com.bfd.mf.runstart.RunStartService - UTF-8 - true - 1.8 - - - - - - - utils-0.0.1-SNAPSHOT - utils-0.0.1-SNAPSHOT - 1.0.0 - system - ${project.basedir}/../../jarlib/utils-0.0.1-SNAPSHOT.jar - - - BfdRedisTools-2.0 - BfdRedisTools-2.0 - 1.0.0 - system - ${project.basedir}/../../jarlib/BfdRedisTools-2.0.jar - - - slf4j-api - org.slf4j - 1.7.22 - - - org.apache.kafka - kafka-clients - 0.10.2.0 - - - slf4j-api - org.slf4j - - - - - com.alibaba - fastjson - 1.1.22 - - - bfd_harpc_service - bfd_harpc_service - 0.0.1 - system - ${project.basedir}/../../jarlib/bfd_harpc_service-0.0.1.jar - - - - com.baifendian - harpc - 1.2 - - - netty - io.netty - - - curator-recipes - org.apache.curator - - - curator-framework - org.apache.curator - - - slf4j-api - org.slf4j - - - - log4j - log4j - - - javax.inject - javax.inject - - - fastjson - com.alibaba - - - guava - com.google.guava - - - httpclient - org.apache.httpcomponents - - - - - - - org.apache.httpcomponents - httpclient - 4.5.1 - - - commons-logging - commons-logging - - - - - com.bfd.nlp - nlp_common_util - 1.1 - system - ${project.basedir}/../../jarlib/nlp_common_util-1.1.jar - - - net.sf.json-lib - json-lib - 2.4 - jdk15 - - - kafka-utils - kafka - 0.10 - - - log4j - log4j - - - zookeeper - org.apache.zookeeper - - - slf4j-log4j12 - org.slf4j - - - - - mysql - mysql-connector-java - 5.1.29 - - - - - org.apache.commons - commons-lang3 - 3.1 - - - commons-logging - commons-logging - 1.1.1 - - - commons-logging - commons-logging-api - 1.0.4 - - - commons-lang - commons-lang - 2.4 - - - - - org.json - json - 20170516 - - - log4j - log4j - 1.2.17 - - - - bfd - hanlp-portable - 1.6.8 - system - ${project.basedir}/../../jarlib/hanlp-portable-1.6.8.jar - - - classifier4j - classifier4j - 0.6 - - - - - - - - - - com.bfd - elastiUtils - 0.0.1-SNAPSHOT - - - commons-codec - commons-codec - - - commons-logging - commons-logging - - - - - net.sourceforge.javacsv - javacsv - 2.0 - - - - org.apache.poi - poi - 3.15 - - - org.apache.poi - poi-ooxml - 3.15 - - - - redis.clients - jedis - 2.6.0 - - - com.wandoulabs.jodis - jodis - 0.1.2 - - - slf4j-api - org.slf4j - - - - - org.slf4j - slf4j-api - RELEASE - - - - - - - - maven-compiler-plugin - - 1.8 - 1.8 - - - - org.apache.maven.plugins - maven-shade-plugin - 1.4 - - - package - - shade - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - com.bfd.mf.runstart.RunStartService - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/AllKeys.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/AllKeys.java deleted file mode 100644 index cbf45a9..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/AllKeys.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.bfd.mf.entity; - -import com.bfd.mf.service.tools.DataCheckUtil; -import com.bfd.mf.service.tools.DateUtil; - -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -public class AllKeys { - private static Map map = new HashMap(); - - public static Map getMap() { - return map; - } - - public static void setMap(Map map) { - AllKeys.map = map; - } - - static { - map.put("age",""); - map.put("area",""); - map.put("attitudesCount",""); - map.put("attr",""); - map.put("author",""); - map.put("authorId",""); - map.put("authorLevel",""); - map.put("authornickname",""); - map.put("availability",0); - map.put("avatar",""); - map.put("brand",""); - map.put("brandId",""); - map.put("cate",""); - map.put("channel",""); - map.put("city",""); - map.put("collectCount",0); - map.put("commentId",""); - map.put("commentScore",0); - map.put("commentsCount",0); - map.put("commentUrl",""); - map.put("content",""); - map.put("contentLength",0); - map.put("contentSimHash",""); - map.put("contentTag",""); - map.put("country",""); - map.put("crawlDataFlag",""); - map.put("crawlDate",new Date ()); - map.put("crawlDay",0); - map.put("crawlTime",0); - map.put("crawlTimeStr",""); - map.put("createDate",new Date ()); - map.put("createDay",0); - map.put("createTime",0); - map.put("createTimeStr",""); - map.put("dataCount",0); - map.put("dataId",""); - map.put("docId",""); - map.put("docType",""); - map.put("downCnt",0); - map.put("egc",0); - map.put("enSource",""); - map.put("expression",new ArrayList<>()); - map.put("extension",""); - map.put("fansCount",""); - map.put("favorCnt",0); - map.put("filePath",new ArrayList<>()); - map.put("imagePath",new ArrayList<>()); - map.put("videoPath",new ArrayList<>()); - map.put("filePathSize",new ArrayList<>()); - map.put("imagePathSize",new ArrayList<>()); - map.put("videoPathSize",new ArrayList<>()); - map.put("finalPhrase",""); - map.put("firstListBrand",""); - map.put("fiveListBrand",""); - map.put("forumScore",""); - map.put("forwardAttitudesCount",0); - map.put("forwardAuthor",""); - map.put("forwardAvatar",""); - map.put("forwardCommentsCount",0); - map.put("forwardContent",""); - map.put("forwardImgs",new ArrayList<>()); - map.put("forwardPostSource",""); - map.put("forwardPubTime",0); - map.put("forwardQuoteCount",0); - map.put("forwardUrl",""); - map.put("forwardUserId",""); - map.put("forwardUserType",0); - map.put("forwardUserUrl",""); - map.put("fourListBrand",""); - map.put("friendsCount",""); - map.put("getSource",""); - map.put("hashTag",new ArrayList<>()); - map.put("hlKeywords",new ArrayList<>()); - map.put("impression",""); - map.put("isDownload","false"); - map.put("isVip",0); - map.put("language",""); - map.put("lastModifiedTime",0); - map.put("listBrand",""); - map.put("location",""); - map.put("nomorprice",0); - map.put("opinions",new ArrayList<>()); - map.put("originalPhrase",""); - map.put("otherSourceJson",""); - map.put("pageCommentCount",0); - map.put("pageTranspondCount",0); - map.put("pageType",""); - map.put("pgc",0); - map.put("pictureList",new ArrayList<>()); - map.put("places",new ArrayList<>()); - map.put("postCount",""); - map.put("postId",""); - map.put("postSource",""); - map.put("price",0); - map.put("primary",0); - map.put("productParameter",""); - map.put("projectName",""); - map.put("promotionInfo",""); - map.put("province",""); - map.put("pubDate",DataCheckUtil.getCurrentTime()); - map.put("pubDay",DataCheckUtil.getCurrentTime()); - map.put("pubTime", DataCheckUtil.getCurrentTime()); - map.put("pubTimeStr",DataCheckUtil.getCurrentTime()); -// map.put("pubDate",new Date()); -// map.put("pubDay", DateUtil.getday()); -// map.put("pubTime",DateUtil.getbeforonecurr()); -// map.put("pubTimeStr", DateUtil.getbeforeHour()); - - map.put("quoteCount",0); - map.put("readCount",0); - map.put("resolution",""); - map.put("secondListBrand",""); - map.put("sex",""); - map.put("sign",""); - map.put("siteId",""); - map.put("skuProperties",""); - map.put("smallImgs",new ArrayList<>()); - map.put("source",""); - map.put("sysAbstract",""); - map.put("sysKeywords",""); - map.put("sysSentiment",0); - map.put("threeListBrand",""); - map.put("thumbnails",""); - map.put("title",""); - map.put("titleLength",0); - map.put("titleSimHash",""); - map.put("translateContent",""); - map.put("translateTitle",""); - map.put("ugc",0); - map.put("url",""); - map.put("urlHash",""); - map.put("userType",""); - map.put("userUrl",""); - map.put("videoTime",""); - map.put("videoUrl",""); - map.put("avatarPath",""); - map.put("viewCnt",0); - map.put("channelNum",""); - map.put("crawlDataFlagType",""); - map.put("dns",""); - map.put("dns",""); - map.put("asrText",""); - map.put("ocrText",new ArrayList<>()); - map.put("hasOCR",0); - map.put("hasASR",0); - map.put("asrLength",0); - map.put("ocrLength",0); - map.put("translateTitleLength",""); - map.put("translateContentLength",""); - map.put("hasTrans",0); - map.put("goodrate",0); - map.put("generalrate",0); - map.put("poorrate",0); - map.put("processtime",new HashMap<>()); - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/AreaCategoryEntity.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/AreaCategoryEntity.java deleted file mode 100644 index d61be60..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/AreaCategoryEntity.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; -import java.util.Objects; - -public class AreaCategoryEntity implements Serializable{ - - private String area; - private String city; - private String country; - private String province; - - - public String getProvince() { - return province; - } - - public void setProvince(String province) { - this.province = province; - } - - public String getCountry() { - return country; - } - - public void setCountry(String country) { - this.country = country; - } - - public String getCity() { - return city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getArea() { - return area; - } - - public void setArea(String area) { - this.area = area; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - AreaCategoryEntity that = (AreaCategoryEntity) o; - return Objects.equals(area, that.area) && - Objects.equals(city, that.city) && - Objects.equals(country, that.country) && - Objects.equals(province, that.province); - } - - @Override - public int hashCode() { - return Objects.hash(area, city, country, province); - } - - @Override - public String toString() { - return "AreaCategoryEntity{" + - "area='" + area + '\'' + - ", city='" + city + '\'' + - ", country='" + country + '\'' + - ", province='" + province + '\'' + - '}'; - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/FieldNormaliz.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/FieldNormaliz.java deleted file mode 100644 index 742bb51..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/FieldNormaliz.java +++ /dev/null @@ -1,227 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; -import java.util.Map; -import java.util.Set; - -public class FieldNormaliz implements Serializable{ - - private static final long serialVersionUID = 1L; - - private int id ; - - private String kafkaName ; - - private int kafkaSerName ; - - private int esSerName ; - - private String esSuffixNames ; - - private String docType ; - - private int isSemtimentApi ; - - private boolean ishlKeyword ; - - private int bussinessType ; - - private Map fieldNormalizeContentMap ; - - private Map fieldNormalizeCommentMap ; - - private Map>> fieldDataMap ; - - private Map fieldInfo ; - - private String groupId ; - - private String createTime ; - - private String finshTime ; - - private int status ; - - private String projectName ; - - private Map>> userfieldDataMap ; - - private String kafkaSuffixName ; - - public String getKafkaSuffixName() { - return kafkaSuffixName; - } - - public void setKafkaSuffixName(String kafkaSuffixName) { - this.kafkaSuffixName = kafkaSuffixName; - } - - public String getKafkaName() { - return kafkaName; - } - - public void setKafkaName(String kafkaName) { - this.kafkaName = kafkaName; - } - - public int getKafkaSerName() { - return kafkaSerName; - } - - public void setKafkaSerName(int kafkaSerName) { - this.kafkaSerName = kafkaSerName; - } - - public int getEsSerName() { - return esSerName; - } - - public void setEsSerName(int esSerName) { - this.esSerName = esSerName; - } - - public String getDocType() { - return docType; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - public int getIsSemtimentApi() { - return isSemtimentApi; - } - - public void setIsSemtimentApi(int isSemtimentApi) { - this.isSemtimentApi = isSemtimentApi; - } - - public int getBussinessType() { - return bussinessType; - } - - public void setBussinessType(int bussinessType) { - this.bussinessType = bussinessType; - } - - public Map getFieldNormalizeContentMap() { - return fieldNormalizeContentMap; - } - - public void setFieldNormalizeContentMap(Map fieldNormalizeContentMap) { - this.fieldNormalizeContentMap = fieldNormalizeContentMap; - } - - public Map getFieldNormalizeCommentMap() { - return fieldNormalizeCommentMap; - } - - public void setFieldNormalizeCommentMap(Map fieldNormalizeCommentMap) { - this.fieldNormalizeCommentMap = fieldNormalizeCommentMap; - } - - public Map>> getFieldDataMap() { - return fieldDataMap; - } - - public Map> getFieldDataMapByType(String type){ - return fieldDataMap.get(type); - } - - public void addFieldDataMap(String type, Map fixFieldData, Integer bussinessType){ - Set keys = fixFieldData.keySet() ; - Map> fieldMaps = fieldDataMap.get(bussinessType) ; - Map fieldMap = fieldMaps.get(type) ; - for(String key : keys){ - fieldMap.put(key, key) ; - } - fieldMaps.put(type, fieldMap); - fieldDataMap.put(bussinessType, fieldMaps) ; - } - - public void setFieldDataMap(Map>> fieldDataMap) { - this.fieldDataMap = fieldDataMap; - } - - public Map getFieldInfo() { - return fieldInfo; - } - - public void setFieldInfo(Map fieldInfo) { - this.fieldInfo = fieldInfo; - } - - public boolean isIshlKeyword() { - return ishlKeyword; - } - - public void setIshlKeyword(boolean ishlKeyword) { - this.ishlKeyword = ishlKeyword; - } - - public String getEsSuffixNames() { - return esSuffixNames; - } - - public void setEsSuffixNames(String esSuffixNames) { - this.esSuffixNames = esSuffixNames; - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getCreateTime() { - return createTime; - } - - public void setCreateTime(String createTime) { - this.createTime = createTime; - } - - public String getFinshTime() { - return finshTime; - } - - public void setFinshTime(String finshTime) { - this.finshTime = finshTime; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getProjectName() { - return projectName; - } - - public void setProjectName(String projectName) { - this.projectName = projectName; - } - - public Map>> getUserfieldDataMap() { - return userfieldDataMap; - } - - public void setUserfieldDataMap(Map>> userfieldDataMap) { - this.userfieldDataMap = userfieldDataMap; - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/KafkaInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/KafkaInfo.java deleted file mode 100644 index 2131b3e..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/KafkaInfo.java +++ /dev/null @@ -1,65 +0,0 @@ -//package com.bfd.mf.entity; -// -//public class KafkaInfo { -// -// private String kafka_server ; -// -// private String kafka_topic ; -// -// private Integer kafka_read_num ; -// -// private String es_server ; -// -// private String es_index_name ; -// -// private String es_index_type ; -// -// public String getKafka_server() { -// return kafka_server; -// } -// -// public void setKafka_server(String kafka_server) { -// this.kafka_server = kafka_server; -// } -// -// public String getKafka_topic() { -// return kafka_topic; -// } -// -// public void setKafka_topic(String kafka_topic) { -// this.kafka_topic = kafka_topic; -// } -// -// public Integer getKafka_read_num() { -// return kafka_read_num; -// } -// -// public void setKafka_read_num(Integer kafka_read_num) { -// this.kafka_read_num = kafka_read_num; -// } -// -// public String getEs_server() { -// return es_server; -// } -// -// public void setEs_server(String es_server) { -// this.es_server = es_server; -// } -// -// public String getEs_index_name() { -// return es_index_name; -// } -// -// public void setEs_index_name(String es_index_name) { -// this.es_index_name = es_index_name; -// } -// -// public String getEs_index_type() { -// return es_index_type; -// } -// -// public void setEs_index_type(String es_index_type) { -// this.es_index_type = es_index_type; -// } -// -//} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFieldInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFieldInfo.java deleted file mode 100644 index 52eae5a..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFieldInfo.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.bfd.mf.entity; - -import java.util.List; - -public class MfFieldInfo { - - private List kafkaJsonString ; - - private List kafkaJsonArray ; - - public MfFieldInfo(List kafkaJsonString, List kafkaJsonArray) { - super(); - this.kafkaJsonString = kafkaJsonString; - this.kafkaJsonArray = kafkaJsonArray; - } - - public List getKafkaJsonString() { - return kafkaJsonString; - } - - public void setKafkaJsonString(List kafkaJsonString) { - this.kafkaJsonString = kafkaJsonString; - } - - public List getKafkaJsonArray() { - return kafkaJsonArray; - } - - public void setKafkaJsonArray(List kafkaJsonArray) { - this.kafkaJsonArray = kafkaJsonArray; - } - - @Override - public String toString() { - return "FieldInfo [kafkaJsonString=" + kafkaJsonString + ", kafkaJsonArray=" + kafkaJsonArray + "]"; - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFixFieldInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFixFieldInfo.java deleted file mode 100644 index b66b4d2..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/MfFixFieldInfo.java +++ /dev/null @@ -1,31 +0,0 @@ -//package com.bfd.mf.entity; -// -//public class MfFixFieldInfo { -// -// private String fix_field_name ; -// -// private String fix_field_value ; -// -// public MfFixFieldInfo(String fix_field_name, String fix_field_value) { -// super(); -// this.fix_field_name = fix_field_name; -// this.fix_field_value = fix_field_value; -// } -// -// public String getFix_field_name() { -// return fix_field_name; -// } -// -// public void setFix_field_name(String fix_field_name) { -// this.fix_field_name = fix_field_name; -// } -// -// public String getFix_field_value() { -// return fix_field_value; -// } -// -// public void setFix_field_value(String fix_field_value) { -// this.fix_field_value = fix_field_value; -// } -// -//} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/TypeEntity.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/TypeEntity.java deleted file mode 100644 index a184ea2..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/TypeEntity.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.bfd.mf.entity; - -import javax.swing.plaf.PanelUI; - -public class TypeEntity { - public static final String TYPE = "type"; - public static final String PAGETYPE = "pagetype"; - // 海外站点页面 - public static final String STORYDETAILPAGE = "storyDetailPage"; - public static final String SOCIALCOMMENT = "socialComment"; - //海外点赞/分享 粉丝页面 - public static final String SOCAILFOLLOW = "socialFollow"; - public static final String SOCAILFANS = "socialFans"; - // 微博页面 - public static final String KEYWORD = "keyword"; - public static final String WEIBO = "weibo"; - public static final String COMMENT = "comment"; - public static final String REPOST = "repost"; - // 论坛页面 - public static final String BBSPOST = "bbspost"; - // 新闻页面 - public static final String NEWSCONTENT = "newscontent"; - public static final String NEWSCOMMENT = "newscomment"; - // 电商页面 - public static final String ECCONTENT = "eccontent"; - public static final String ECCOMMENT = "eccomment"; //eccomment - // 用户页面 - public static final String HOME = "home"; - public static final String BBSUSERINFO = "bbsuserinfo"; - public static final String NEWSUSER = "newsuser"; - public static final String USERINFOPAGE = "userInfoPage"; - //cid - public static final String ISDOWNLOAD = "isDownload"; - //cid - public static final String cid = "cid"; - public static final String bbsuserinfo = "bbsuserinfo";//论坛用户 - - public static final String crawlDataFlag="crawlDataFlag"; - - public static final String Source="source"; - //dns - public static final String dns="dns"; - - - - } diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/FiledTableInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/FiledTableInfo.java deleted file mode 100644 index 70a6d89..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/FiledTableInfo.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.bfd.mf.entity.mysql; - -import com.bfd.mf.service.tools.DBUtil; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class FiledTableInfo { - - public static Map> tableInfoMap = new HashMap>(); - - public static void loadTableInfo(){ - List> tableInfoList1 = DBUtil.getInstance("db_stat").query("select * from mf_field_table_info where bussiness_type = 1"); - if(tableInfoList1.size() > 0){ - Map tablefieldValue = new HashMap(); - for(Map tableInfo : tableInfoList1){ - tablefieldValue.put(tableInfo.get("col_name").toString(), tableInfo.get("col_type").toString()); - } - tableInfoMap.put(1, tablefieldValue); - } - - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelInfo.java deleted file mode 100644 index 3e7d163..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelInfo.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.bfd.mf.entity.mysql; - - -import com.bfd.crawler.utils.JsonUtils; -import com.bfd.mf.service.tools.DBUtil; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class MfChannelInfo { - - public static Map channelInfoMap = new HashMap(); - public static Map docTypeInfos = new HashMap(); - public static Map channelnumInfoMap = new HashMap(); - public static Map domain_nameInfoMap = new HashMap(); - public static void loadChannelInfo(){ - List> channelInfoList = DBUtil.getInstance("db_stat").query("select cid,site_type,domain_name from cl_site"); - if(channelInfoList.size() > 0){ - for(Map channelInfo : channelInfoList){ - String channel = channelInfo.get("site_type").toString(); - String docType = channelInfo.get("site_type").toString(); - String num = channelInfo.get("site_type").toString(); - String domain_name= channelInfo.get("domain_name").toString(); - if(channel.equals("0")){ - channel = "社交媒体"; - docType = "social"; - num = "0"; - } - if(channel.equals("1")){ - channel = "新闻资讯"; - docType = "news"; - num = "1"; - } - if(channel.equals("2")){ - channel = "博客智库"; - docType = "blog"; - num = "2"; - } - if(channel.equals("3")){ - channel = "论坛贴吧"; - docType = "bbs"; - num = "3"; - } - if(channel.equals("4")){ - channel = "网络视频"; - docType = "video"; - num = "4"; - } - if(channel.equals("5")){ - channel = "电商网站"; - docType = "item"; - num = "5"; - } - if(channel.equals("6")){ - channel = "搜索引擎"; - docType = "search"; - num = "6"; - } - if(channel.equals("7")){ - channel = "生活方式"; - docType = "life"; - num = "7"; - } - channelInfoMap.put(channelInfo.get("cid").toString(),channel); - docTypeInfos.put(channelInfo.get("cid").toString(), docType); - channelnumInfoMap.put(channelInfo.get("cid").toString(),num); - domain_nameInfoMap.put(channelInfo.get("cid").toString(),domain_name); - //System.out.println(JsonUtils.toJSONString(domain_nameInfoMap)); - } - } - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelnumInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelnumInfo.java deleted file mode 100644 index 7b8ab77..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfChannelnumInfo.java +++ /dev/null @@ -1,24 +0,0 @@ -//package com.bfd.mf.entity.mysql; -// -//import com.bfd.mf.service.tools.DBUtil; -// -//import java.util.HashMap; -//import java.util.List; -//import java.util.Map; -// -//public class MfChannelnumInfo { -// public static Map channelnumInfoMap = new HashMap(); -// -// public static void loadChannelnumInfo(){ -// //List> channelInfoList = DBUtil.getInstance("db_stat").query("select * from mf_channel_info"); -// List> channelInfoList = DBUtil.getInstance("db_stat").query("select cid,site_type from cl_site"); -// if(channelInfoList.size() > 0){ -// for(Map channelInfo : channelInfoList){ -// String channel = channelInfo.get("site_type").toString(); -// //channelInfoMap.put(channelInfo.get("cid").toString(),channel); -// channelnumInfoMap.put(channelInfo.get("cid").toString(),channel); -// } -// } -// } -// -//} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfDoctypeInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfDoctypeInfo.java deleted file mode 100644 index 8908c48..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfDoctypeInfo.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.bfd.mf.entity.mysql; - - -import com.bfd.mf.service.tools.DBUtil; -import com.bfd.mf.service.tools.JsonUtils; -import com.bfd.mf.service.tools.WriteMethod; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class MfDoctypeInfo { - - public static Map docTypeInfos = new HashMap(); - public static void loadDocTypeInfo(){ - //List> souceInfoList = DBUtil.getInstance("db_stat").query("select * from mf_doctype_info"); - List> souceInfoList = DBUtil.getInstance("db_stat").query("select cid,site_type from cl_site"); - if(souceInfoList.size() > 0){ - for(Map souceInfo : souceInfoList){ - String docType = souceInfo.get("site_type").toString(); - if(docType.equals("0")){ - docType = "social"; - } - if(docType.equals("1")){ - docType = "news"; - } - if(docType.equals("2")){ - docType = "blog"; - } - if(docType.equals("3")){ - docType = "bbs"; - } - if(docType.equals("4")){ - docType = "video"; - } - if(docType.equals("5")){ - docType = "item"; - } - if(docType.equals("6")){ - docType = "search"; - } - if(docType.equals("7")){ - docType = "life"; - } - - docTypeInfos.put(souceInfo.get("cid").toString(), docType); - } - } -// System.out.println(JsonUtils.toJSONString(docTypeInfos)); -// WriteMethod.writeMethod("site.txt",JsonUtils.toJSONString(docTypeInfos)); - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldInfo.java deleted file mode 100644 index 33f7b39..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldInfo.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.bfd.mf.entity.mysql; - -import com.bfd.mf.service.tools.DBUtil; -import com.bfd.mf.service.tools.JsonUtils; -import org.apache.commons.lang.StringUtils; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class MfFieldInfo { - - public static Map>> fieldNormalizeInfoMap = new HashMap>>(); - - - public static void loadBackstageFieldInfo(){ - List> fieldList = DBUtil.getInstance("db_stat").query("select * from mf_field_info_copy"); - Map> allfields = new HashMap>(); - Map weibocontentdata = new HashMap(); - Map ecContentdata = new HashMap(); - Map newsContentdata = new HashMap(); - Map bbsContentdata = new HashMap(); - Map weiboCommentdata = new HashMap(); - Map ecCommentdata = new HashMap(); - Map newsCommentdata = new HashMap(); - Map bbsCommentdata = new HashMap(); - Map abroadcontentdata = new HashMap(); - Map abroadcommentdata = new HashMap(); - Map userInfodata = new HashMap<>(); - Map abroadfollowdata = new HashMap<>(); - Map abroadfansdata = new HashMap<>(); - if( fieldList.size() > 0 ){ - for(Map fielMap : fieldList){ - - if(fielMap.get("weibocontentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("weibocontentfieldname").toString())){ - weibocontentdata = excField(fielMap.get("weibocontentfieldname").toString(), fielMap.get("esfieldname").toString(), weibocontentdata); - } - if(fielMap.get("eccontentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("eccontentfieldname").toString())){ - ecContentdata = excField(fielMap.get("eccontentfieldname").toString(), fielMap.get("esfieldname").toString(), ecContentdata); - } - if(fielMap.get("newscontentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("newscontentfieldname").toString())){ - newsContentdata = excField(fielMap.get("newscontentfieldname").toString(), fielMap.get("esfieldname").toString(), newsContentdata); - } - if(fielMap.get("bbscontentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("bbscontentfieldname").toString())){ - bbsContentdata = excField(fielMap.get("bbscontentfieldname").toString(), fielMap.get("esfieldname").toString(), bbsContentdata); - } - if(fielMap.get("weibocommentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("weibocommentfieldname").toString())){ - weiboCommentdata = excField(fielMap.get("weibocommentfieldname").toString(), fielMap.get("esfieldname").toString(), weiboCommentdata); - } - if(fielMap.get("eccommentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("eccommentfieldname").toString())){ - ecCommentdata = excField(fielMap.get("eccommentfieldname").toString(), fielMap.get("esfieldname").toString(), ecCommentdata); - } - if(fielMap.get("newscommentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("newscommentfieldname").toString())){ - newsCommentdata = excField(fielMap.get("newscommentfieldname").toString(), fielMap.get("esfieldname").toString(), newsCommentdata); - } - if(fielMap.get("bbscommentfieldname")!= null && StringUtils.isNotBlank(fielMap.get("bbscommentfieldname").toString())){ - bbsCommentdata = excField(fielMap.get("bbscommentfieldname").toString(), fielMap.get("esfieldname").toString(), bbsCommentdata); - } - if(fielMap.get("abroadcontentfieldname") != null && StringUtils.isNotBlank(fielMap.get("abroadcontentfieldname").toString())){ - abroadcontentdata = excField(fielMap.get("abroadcontentfieldname").toString(), fielMap.get("esfieldname").toString(), abroadcontentdata); - } - if(fielMap.get("abroadcommentfieldname") != null && StringUtils.isNotBlank(fielMap.get("abroadcommentfieldname").toString())){ - abroadcommentdata = excField(fielMap.get("abroadcommentfieldname").toString(), fielMap.get("esfieldname").toString(), abroadcommentdata); - } - if(fielMap.get("userinfofieldname") != null && StringUtils.isNotBlank(fielMap.get("userinfofieldname").toString())){ - userInfodata = excField(fielMap.get("userinfofieldname").toString(), fielMap.get("esfieldname").toString(), userInfodata); - } - - if(fielMap.get("abroadfollowfieldname") != null && StringUtils.isNotBlank(fielMap.get("abroadfollowfieldname").toString())){ - abroadfollowdata = excField(fielMap.get("abroadfollowfieldname").toString(), fielMap.get("esfieldname").toString(), abroadfollowdata); - } - if(fielMap.get("abroadfansfieldname") != null && StringUtils.isNotBlank(fielMap.get("abroadfansfieldname").toString())){ - abroadfansdata = excField(fielMap.get("abroadfansfieldname").toString(), fielMap.get("esfieldname").toString(), abroadfansdata); - } - } - - allfields.put("keyword", weibocontentdata); - allfields.put("comment", weiboCommentdata); - - allfields.put("eccontent", ecContentdata); - allfields.put("eccomment", ecCommentdata); - - allfields.put("newscontent", newsContentdata); - allfields.put("newscomment", newsCommentdata); - - allfields.put("bbspost", bbsContentdata); - allfields.put("bbspost_comment", bbsCommentdata); - - allfields.put("storyDetailPage", abroadcontentdata); - allfields.put("socialComment", abroadcommentdata); - allfields.put("userInfoPage",userInfodata); - allfields.put("socialFollow",abroadfollowdata); - allfields.put("socialFans",abroadfansdata); - - fieldNormalizeInfoMap.put(1, allfields) ; - // System.out.println(JsonUtils.toJSONString(fieldNormalizeInfoMap)); - } - } - - - private static Map excField(String value, String esValue, Map fieldMap){ - value = value.replaceAll("\\(.*?\\)", ""); - String[] fieldValues = value.split("/") ; - for(int i = 0 ; i < fieldValues.length ; i++){ - fieldMap.put(fieldValues[i], esValue) ; - } - return fieldMap ; - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldTableInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldTableInfo.java deleted file mode 100644 index 743e197..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldTableInfo.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.bfd.mf.entity.mysql; - - -import com.bfd.mf.service.tools.DBUtil; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class MfFieldTableInfo { - - public static Map> tableInfoMap = new HashMap>(); - - public static void loadTableInfo(){ - List> tableInfoList = DBUtil.getInstance("db_stat").query("select * from mf_field_table_info where bussiness_type = 1"); - - if(tableInfoList.size() > 0){ - Map tablefieldValue = new HashMap(); - for(Map tableInfo : tableInfoList){ - tablefieldValue.put(tableInfo.get("col_name").toString(), tableInfo.get("col_type").toString()); - } - tableInfoMap.put(1, tablefieldValue); - } - - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldType.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldType.java deleted file mode 100644 index ba1580c..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfFieldType.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.bfd.mf.entity.mysql; - - -import com.bfd.mf.entity.MfFieldInfo; -import com.bfd.mf.service.tools.DBUtil; - -import java.util.*; - -public class MfFieldType { - - public static Map fieldStringTypes = new HashMap(); - - public static void loadFieldType(){ - List> fieldtypeList = DBUtil.getInstance("db_stat").query("select * from mf_field_type"); - if(fieldtypeList.size()> 0){ - MfFieldInfo fieldInfo ; - for(Map fieldtypeMap : fieldtypeList){ - List JsonStringresult = new ArrayList(); - List jsonArrayresult = new ArrayList(); - if(fieldtypeMap.get("kafkajsonstring") != null){ - JsonStringresult = Arrays.asList(fieldtypeMap.get("kafkajsonstring").toString().split(",")) ; - } - if(fieldtypeMap.get("kafkajsonarray") != null){ - jsonArrayresult = Arrays.asList(fieldtypeMap.get("kafkajsonarray").toString().split(",")) ; - } - - fieldInfo = new MfFieldInfo(JsonStringresult,jsonArrayresult); - fieldStringTypes.put(fieldtypeMap.get("kafka_type").toString(), fieldInfo); - } - } - - } -// -// public static void main(String[] args) { -// List JsonStringresult = Arrays.asList("attr".split(",")) ; -// System.out.println(JsonStringresult); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfSouceInfo.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfSouceInfo.java deleted file mode 100644 index 19b0834..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/MfSouceInfo.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.bfd.mf.entity.mysql; - - -import com.bfd.mf.service.tools.DBUtil; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class MfSouceInfo { - public static Map souceInfos = new HashMap(); - - public static void loadSouceInfo(){ - List> souceInfoList = DBUtil.getInstance("db_stat").query("select cid,site_name from cl_site"); - //List> souceInfoList = DBUtil.getInstance("db_stat").query("select cid,source from mf_source_info"); - if(souceInfoList.size() > 0){ - for(Map souceInfo : souceInfoList){ - souceInfos.put(souceInfo.get("cid").toString(), souceInfo.get("site_name").toString()); - //souceInfos.put(souceInfo.get("cid").toString(), souceInfo.get("area").toString()); - //System.out.println(souceInfo.get("cid").toString()+" == "+souceInfo.get("site_name").toString()); - } - } - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/SubjectTask.java b/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/SubjectTask.java deleted file mode 100644 index 7795846..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/entity/mysql/SubjectTask.java +++ /dev/null @@ -1,81 +0,0 @@ -//package com.bfd.mf.entity.mysql; -// -// -//import com.bfd.crawler.utils.JsonUtils; -//import com.bfd.mf.service.tools.DBUtil; -// -//import java.util.ArrayList; -//import java.util.HashMap; -//import java.util.List; -//import java.util.Map; -// -//public class SubjectTask { -// -// public static Map>> subjectTaskMap = new HashMap<>(); -// public static void loadSubjectTask(){ -// subjectTaskMap.clear(); -// List> subjectTaskList = DBUtil.getInstance("db_stat").query("select cs.status, ct.external_id, ct.subject_id, ct.id, ct.cid, ct.crawl_data_flag,cs.kafka_switch,cs.kafka_addr,cs.go_fast_addr,cs.kafka_topic,cs.go_fast_switch from cl_subject cs Join cl_task ct on(ct.subject_id=cs.id);"); -// if(subjectTaskList.size() > 0){ -// String key = ""; -// for(Map subjectTask : subjectTaskList){ //{subject_id=10222, name=我是张三, task_id=188, id=71, crawl_data_flag=aaa} -// key = subjectTask.get("cid") + "#####" + subjectTask.get("crawl_data_flag"); -// Map value = new HashMap<>(); -// List> valueList = new ArrayList<>(); -// String v_subject_id = ""; -// String v_go_fast_addr = ""; -// String kafka_switch = ""; -// String v_kafka_addr = ""; -// String v_task_id = ""; -// String v_external_id =""; -// String v_go_fast_switch=""; -// String v_kafka_topic=""; -// String v_status=""; -// if(null != subjectTask.get("subject_id")) { -// v_subject_id = subjectTask.get("subject_id").toString(); -// } -// if(null != subjectTask.get("go_fast_addr")) { -// v_go_fast_addr = subjectTask.get("go_fast_addr").toString(); -// } -// if(null != subjectTask.get("kafka_addr")) { -// v_kafka_addr = subjectTask.get("kafka_addr").toString(); -// } -// if(null != subjectTask.get("kafka_switch")){ -// kafka_switch = subjectTask.get("kafka_switch").toString(); -// } -// if(null !=subjectTask.get("id")){ -// v_task_id = subjectTask.get("id").toString(); -// } -// if(null !=subjectTask.get("external_id")){ -// v_external_id = subjectTask.get("external_id").toString(); -// } -// if(null !=subjectTask.get("go_fast_switch")){ -// v_go_fast_switch = subjectTask.get("go_fast_switch").toString(); -// } -// if(null !=subjectTask.get("kafka_topic")){ -// v_kafka_topic = subjectTask.get("kafka_topic").toString(); -// } -// if(null !=subjectTask.get("status")){ -// v_status = subjectTask.get("status").toString(); -// } -// value.put("subject_id",v_subject_id); -// value.put("go_fast_addr",v_go_fast_addr); -// value.put("export_to_kafka",kafka_switch); -// value.put("kafka_addr",v_kafka_addr); -// value.put("task_id",v_task_id); -// value.put("external_id",v_external_id); -// value.put("go_fast_switch",v_go_fast_switch); -// value.put("kafka_topic",v_kafka_topic); -// value.put("status",v_status);//专题的状态 -// key = key.toLowerCase(); -// if(subjectTaskMap.containsKey(key)){ -// valueList = subjectTaskMap.get(key); -// valueList.add(value); -// }else{ -// valueList.add(value); -// } -// subjectTaskMap.put(key,valueList); -// } -// // System.out.println(JsonUtils.toJSONString(subjectTaskMap)); -// } -// } -//} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/runstart/RunStartService.java b/cl_stream_service/src/main/java/com/bfd/mf/runstart/RunStartService.java deleted file mode 100644 index e633a82..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/runstart/RunStartService.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.bfd.mf.runstart; - - -import com.bfd.crawler.kafka7.KfkConsumer; -import com.bfd.mf.entity.mysql.*; -import com.bfd.mf.service.rmi.ServiceManager; -import com.bfd.mf.service.rmi.impl.ServiceManagerImpl; -import com.bfd.mf.service.tools.DBUtil; -import com.bfd.mf.service.tools.HanLPUtils; -import crawler.open.util.RedisUtil; -import org.apache.log4j.Logger; -import org.apache.log4j.PropertyConfigurator; - -import java.net.MalformedURLException; -import java.rmi.AlreadyBoundException; -import java.rmi.Naming; -import java.rmi.RemoteException; -import java.rmi.registry.LocateRegistry; -import java.util.Timer; -import java.util.TimerTask; - -public class RunStartService { - private static final Logger LOG = Logger.getLogger(RunStartService.class); - - private static int checkMsqlIndextimer = 5000 ; - private static String log4jPath = "../etc/log4j.properties"; - private static String dbPath = "../etc/db.properties"; - private static String redisPath = "../etc/redis.properties"; - static { - PropertyConfigurator.configureAndWatch(log4jPath); - DBUtil.init(dbPath); - RedisUtil.init(redisPath); - } - - public static void main(String[] args) { - - try { - - startRmiService(); - FiledTableInfo.loadTableInfo(); - MfFieldInfo.loadBackstageFieldInfo(); // field_info - MfFieldType.loadFieldType(); // field_type - MfSouceInfo.loadSouceInfo(); // source_info - MfFieldTableInfo.loadTableInfo(); // field_table_info - MfDoctypeInfo.loadDocTypeInfo(); // doctype_info - MfChannelInfo.loadChannelInfo(); // channel_info - //MfChannelnumInfo.loadChannelnumInfo(); // channel_info - HanLPUtils.initAnalyzer(); - } catch (Exception e) { - e.printStackTrace(); - } - - - //new AreaCategoryMappingUtils(); - } - - public static void startListen(){ - Timer t = new Timer(); - t.schedule(new RunStartService().new StartListenMsqlThread(), 2000, checkMsqlIndextimer); - } - - class StartListenMsqlThread extends TimerTask{ - @Override - public void run() { - } - } - - public static void startRmiService() { - try { - /*** 创建一个远程对象 ***/ - ServiceManager serviceManager = new ServiceManagerImpl(); - /*** - * 本地主机上的远程对象注册表Registry的实例, 并指定端口为8888,这一步必不可少(Java默认端口是1099), - * 必不可缺的一步,缺少注册表创建,则无法绑定对象到远程注册表上 - ***/ - LocateRegistry.createRegistry(2099);//6888 - Naming.bind("//127.0.0.1:2099/serviceManager", serviceManager); - /*** 把远程对象注册到RMI注册服务器上,并命名为taskManager ***/ - /*** 绑定的URL标准格式为:rmi://host:port/name(其中协议名可以省略,下面两种写法都是正确的) ***/ - System.out.println(">>>>>INFO:远程IHello对象绑定成功!"); - } catch (RemoteException e) { - System.out.println("创建远程对象发生异常!"); - LOG.error("RunStart>>>创建远程对象发生异常!"); - e.printStackTrace(); - } catch (MalformedURLException e) { - System.out.println("发生URL畸形异常!"); - LOG.error("RunStart>>>发生URL畸形异常!"); - e.printStackTrace(); - } catch (AlreadyBoundException e) { - e.printStackTrace(); - } - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/annotation/SetProperty.java b/cl_stream_service/src/main/java/com/bfd/mf/service/annotation/SetProperty.java deleted file mode 100644 index ce25646..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/annotation/SetProperty.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.bfd.mf.service.annotation; - -import java.lang.annotation.*; - -@Documented -@Retention(RetentionPolicy.RUNTIME) -@Target({ElementType.FIELD}) - -public @interface SetProperty { - String propertyName(); - String propertyValue(); -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ExtendTypeInterface.java b/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ExtendTypeInterface.java deleted file mode 100644 index d1c5626..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ExtendTypeInterface.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.bfd.mf.service.extendType; - -import java.util.Map; - -public interface ExtendTypeInterface { - - Map exec() ; - void end(); -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ForegroundExtendType.java b/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ForegroundExtendType.java deleted file mode 100644 index ab92a79..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ForegroundExtendType.java +++ /dev/null @@ -1,572 +0,0 @@ -package com.bfd.mf.service.extendType; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.crawler.kafka7.KfkProducer; -import com.bfd.crawler.utils.JsonUtils; -import com.bfd.mf.entity.MfFieldInfo; -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.entity.TypeEntity; -import com.bfd.mf.service.tools.MfMD5Util; -import com.bfd.mf.service.tools.WriteMethod; -import crawler.open.util.RedisUtil; -import org.apache.log4j.Logger; -import org.omg.Messaging.SYNC_WITH_TRANSPORT; - -import java.util.*; -import static com.bfd.crawler.utils.DataUtil.calcMD5; - -public class ForegroundExtendType extends ParentExctendType implements Runnable{ - - private static final Logger LOG = Logger.getLogger(ForegroundExtendType.class); - //private static final Logger logger= Logger.getLogger("servicedata"); - private String data ; - private FieldNormaliz fieldNormaliz ; - private KfkProducer kfkProducer ; - private String kafkaName ; - private static Map> tableInfoMap; - - public ForegroundExtendType(String data, FieldNormaliz fieldNormaliz, KfkProducer kfkProducer,Map> tableInfoMap){ - this.data = data ; - this.fieldNormaliz = fieldNormaliz ; - this.kfkProducer = kfkProducer ; - this.kafkaName = fieldNormaliz.getKafkaName() ; - this.tableInfoMap = tableInfoMap; - - } - public Map exec() { - try { - Map dataMap = JsonUtils.parseObject(data); - if(dataMap==null){ - return null; - } - Map dataMare =new HashMap<>(); - if(dataMap.containsKey("processtime")){ - dataMare = (Map) dataMap.get("processtime"); - dataMare.put("sbeginreadtime",System.currentTimeMillis()); - } - String projectName = fieldNormaliz.getProjectName();//后期注释 - int kafkaServerName = fieldNormaliz.getKafkaSerName(); - String kafkaName = fieldNormaliz.getKafkaName(); - //int esSerName = fieldNormaliz.getEsSerName();//后期注释 - if(4==kafkaServerName){ - kafkaServerName=kafkaServerName-2; - } - String kafkaSuffixName = fieldNormaliz.getKafkaSuffixName(); - LOG.info("[ForegroundExtendType] exec >>> "+ data); - if(!dataMap.containsKey(TypeEntity.crawlDataFlag)){ - this.getCrawlDataFlag(dataMap); - } - String cid = (String) dataMap.get(TypeEntity.cid); - String source =""; - if (dataMap.containsKey(TypeEntity.Source)){ - source=(String) dataMap.get(TypeEntity.Source); - } - String dns =""; - if (dataMap.containsKey(TypeEntity.dns)){//TypeEntity.dns - dns=(String) dataMap.get(TypeEntity.dns); - } - if(dataMap.containsKey(TypeEntity.TYPE)||dataMap.containsKey(TypeEntity.PAGETYPE)){ - String type =""; - if(dataMap.containsKey(TypeEntity.TYPE)){ - type=(String) dataMap.get(TypeEntity.TYPE); - }else { - type=(String) dataMap.get(TypeEntity.PAGETYPE); - } - if(type.contains("list")){ - return null; - } else if(type.equals(TypeEntity.WEIBO)){ - type = TypeEntity.KEYWORD; - } else if(type.equals(TypeEntity.HOME)||type.equals(TypeEntity.bbsuserinfo)){ - type = TypeEntity.USERINFOPAGE; - } - - // 如果是电商详情,直接写入到 redis - if (type.equals(TypeEntity.ECCONTENT)) { - String product_id = (String) dataMap.get("product_id"); - String keys = cid + "#" + product_id; - int dbindex = hash(keys, 9); - LOG.info("[ ForegroundExtendType ] 往 Redis 中灌入商品详情数据 dbIndex = " + dbindex + " ; keys = " + keys); - RedisUtil.set(keys, data, dbindex); - // Map newdataMap = new HashMap(dataMap); - //往专题下写数据 - Map newdataMap = new HashMap(dataMap); - Map fieldInfoMap = fieldNormaliz.getFieldInfo(); - ParralleData pd = getParralleData(fieldInfoMap, newdataMap, type, cid, projectName,source,dns); - List> datas = pd.getParralleData(); - datas = new ArrayList<>(new HashSet<>(datas)); - //needSentimentApi = 1 是需要 0 不需要 - this.installData(kafkaServerName, datas, kafkaName, true, - fieldNormaliz.getIsSemtimentApi(), type, cid, projectName, kafkaSuffixName,tableInfoMap); - } else { - Map fieldInfoMap = fieldNormaliz.getFieldInfo(); - Map newdataMap = new HashMap(dataMap); - LOG.info(JsonUtils.toJSONString(newdataMap)); - System.out.println(type); - //WriteMethod.writeMethod("yuanshuju.txt", JsonUtils.toJSONString(newdataMap)); - if(newdataMap.containsKey("comments") && newdataMap.get("comments").toString().equals("[]")){ - LOG.info("This data have no comments " + data); - return null; - } - if(newdataMap.containsKey("videoPath")){ - List valueList = new ArrayList(); - if (newdataMap.get("videoPath") instanceof String){ - if(!newdataMap.get("videoPath").toString().equals("")){ - valueList.add(newdataMap.get("videoPath").toString()); - newdataMap.put("videoPath",valueList);} - else{ - newdataMap.put("videoPath",valueList); - } - } - } - // 如果是电商评论,需要把电商详情从 redis 中拿出来组装一下再进行处理 - //*************************************************************************************// - if (type.equals(TypeEntity.ECCOMMENT)) { - if (!newdataMap.containsKey("product_id")&&newdataMap.containsKey("comments")) { - List> comments = (List>) newdataMap.get("comments"); - Map comment = comments.get(0); - if (comment.containsKey("product_id")) { - String product_id = (String) comment.get("product_id"); - newdataMap.put("product_id", product_id); - } - } - newdataMap = disposeEcComment(cid, newdataMap); - if(null==newdataMap){ - return null ; - } - LOG.info(JsonUtils.toJSONString(newdataMap)); - } else if (type.equals(TypeEntity.NEWSCONTENT)){ - if (newdataMap.containsKey("news_id")){ - String news_id=(String) newdataMap.get("url"); - String md5news_id=MfMD5Util.GetMD5Code(news_id); - newdataMap.put("news_id",md5news_id); - } - } else if (type.equals(TypeEntity.NEWSCOMMENT)){ - if (newdataMap.containsKey("news_id")){ - String news_id=""; - if(newdataMap.containsKey("purl")){ - news_id=(String) newdataMap.get("purl"); - }else{ - news_id=(String) newdataMap.get("news_id"); - } - String md5news_id=MfMD5Util.GetMD5Code(news_id); - List> comments = (List>) newdataMap.get("comments"); - for (Map m : comments) { - if (m.containsKey("news_id")){ - m.put("news_id",md5news_id); - } - } - Map comment = comments.get(0); - if (comment.containsKey("news_id")) { - newdataMap.put("news_id", md5news_id); - } - } - } else if (type.equals(TypeEntity.USERINFOPAGE)){ - //if(cid.equals("twitter")||cid.equals("facebook")||cid.equals("Facebook")){ - String picFileServerHost= newdataMap.get("picFileServerHost").toString(); - if (!newdataMap.get("pic").toString().equals("")){ - String pic=newdataMap.get("pic").toString(); - String gofastpic=picFileServerHost+pic; - newdataMap.put("avatarPath",gofastpic); - } - //} - } else if (type.equals(TypeEntity.STORYDETAILPAGE)){ - // if(cid.equals("twitter")||cid.equals("facebook")||cid.equals("Facebook")||cid.equals("ins")||cid.equals("linkedin")){ - String picFileServerHost= newdataMap.get("picFileServerHost").toString(); - String videoFileServerHost=newdataMap.get("videoFileServerHost").toString();// - String videoPath=newdataMap.get("videoPath").toString(); - if (!newdataMap.get("profilePic").toString().equals("")){ - String pic=newdataMap.get("profilePic").toString(); - String gofastpic=picFileServerHost+pic; - newdataMap.put("avatarPath",gofastpic); - } - List postPicsSrc= (List) newdataMap.get("postPics"); - if (postPicsSrc.size()>0){ - List valueList = new ArrayList(); - Iterator it = postPicsSrc.iterator(); - while(it.hasNext()){ - String geturl= it.next(); - String relpostPicsSrc=picFileServerHost+geturl; - valueList.add(relpostPicsSrc); - } - newdataMap.put("postPics",valueList); - } - if(!newdataMap.get("videoPath").toString().equals("[]")){ - String videoPatha= newdataMap.get("videoPath").toString().replace("[","").replace("]",""); - //System.out.println("valueList是个啥子嘛"+videoPatha); - String gofasvideoPath=videoFileServerHost+videoPatha; - gofasvideoPath=gofasvideoPath.replace("[","").replace("]",""); - // System.out.println("==="+gofasvideoPath+"gofasvideoPath"); - //System.out.println(newdataMap.get("videoPath").toString()+"======"); - List valueList = new ArrayList(); - valueList.add(gofasvideoPath); - newdataMap.put("videoPath",valueList); - //} - }else{ - if(newdataMap.containsKey("videoPath")){ - if (newdataMap.get("videoPath") instanceof String){ - List valueList = new ArrayList(); - //System.out.println("20201125"); - //valueList.add(newdataMap.get("videoPath").toString()); - newdataMap.put("videoPath",new ArrayList()); - } - } - } - if(newdataMap.get("profilePic").toString().equals("")&&postPicsSrc.size()==0&&newdataMap.get("videoPath").toString().equals("[]")){ - newdataMap.put("isDownload",false); - } - // } - }else if(type.equals(TypeEntity.SOCIALCOMMENT)){ - List> comments = (List>) newdataMap.get("comment"); - List> newcomments =new ArrayList<>(); - for (Map m : comments) { - String picFileServerHost= m.get("picFileServerHost").toString(); - if (m.containsKey("commentPic")){ - if (!m.get("commentPic").toString().equals("")){ - List valueList = new ArrayList(); - valueList.add(picFileServerHost+m.get("commentPic")); - m.put("imagePath",valueList); - } - }if(m.containsKey("reviewerProfilePic")&&!m.get("reviewerProfilePic").toString().equals("")){ - //newdataMap.put("avatarPath",picFileServerHost+m.get("reviewerProfilePic")); - m.put("avatarPath",picFileServerHost+m.get("reviewerProfilePic")); - //System.out.println(m.get("reviewerProfilePic")+"m.get(\"reviewerProfilePic\")"); - } - newcomments.add(m); - } - newdataMap.put("comment",newcomments); - } else if(type.equals(TypeEntity.SOCAILFANS)){ - List> fans = (List>) newdataMap.get("fans"); - List> newfans =new ArrayList<>(); - if(fans.size()>0){ - for (Map m : fans) { - if (m.containsKey("pic")&&!m.get("pic").toString().equals("")){ - m.put("avatarPath","https://si.pdeepmatrix.com"+m.get("pic")); - } - newfans.add(m); - } - newdataMap.put("fans",newfans); - } - } else if(type.equals(TypeEntity.SOCAILFOLLOW)){ - List> socialFollow = new ArrayList<>(); - List> newFollow =new ArrayList<>(); - if(newdataMap.containsKey("likelist")){ - socialFollow=(List>) newdataMap.get("likelist"); - for (Map m : socialFollow) { - if (m.containsKey("pic")&&!m.get("pic").toString().equals("")){ - m.put("avatarPath","https://si.pdeepmatrix.com"+m.get("pic")); - } - newFollow.add(m); - } - newdataMap.put("likelist",newFollow); - }else if(newdataMap.containsKey("repost")) { - socialFollow=(List>) newdataMap.get("repost"); - for (Map m : socialFollow) { - if (m.containsKey("pic")&&!m.get("pic").toString().equals("")){ - m.put("avatarPath","https://si.pdeepmatrix.com"+m.get("pic")); - } - newFollow.add(m); - } - newdataMap.put("repost",newFollow); - } - - } - if(type.equals(TypeEntity.BBSPOST)){//bbs处理逻辑 - putBBSpostData( cid, type, projectName, fieldInfoMap, dataMap, kafkaServerName, kafkaSuffixName,source,dns); - } else{ - ParralleData pd = getParralleData(fieldInfoMap, newdataMap, type, cid, projectName,source,dns); - List> datas = pd.getParralleData(); - datas = new ArrayList<>(new HashSet<>(datas)); - try { - // needSentimentApi = 1 是需要 0 不需要 - this.installData(kafkaServerName, datas, kafkaName, true, - fieldNormaliz.getIsSemtimentApi(), type, cid, projectName, kafkaSuffixName,tableInfoMap); - } catch (Exception e) { - e.printStackTrace(); - } - } - - - } - } - } catch (Exception e) { - e.printStackTrace(); - LOG.error("parse err data:"+data); - kfkProducer.send(kafkaName+"_err", "parse data error: the data is "+data); - } - return null; - } - - /** - * - */ - private void getCrawlDataFlag(Map dataMap) { - try{ - if(dataMap.containsKey("attr")) { - Map attr = (Map) dataMap.get("attr"); - if(attr.containsKey("crawlDataFlag")){ - String crawlDataFlag = (String) attr.get("crawlDataFlag"); - //System.out.println("====="+crawlDataFlag+"crawlDataFlag123456789"); - dataMap.put("crawlDataFlag",crawlDataFlag); - } - if(attr.containsKey("listbrand")){ - String listbrand = (String) attr.get("listbrand"); - dataMap.put("listbrand",listbrand); - } - if(attr.containsKey("project_name")){ - String project_name = (String) attr.get("project_name"); - dataMap.put("project_name",project_name); - } - if(attr.containsKey("product_url")){ - String product_url = (String) attr.get("product_url"); - dataMap.put("product_url",product_url); - } - if(attr.containsKey("attachTag")){ - String attachTag = (String) attr.get("attachTag"); - dataMap.put("attachTag",attachTag); - } - if (attr.containsKey("attachtag")) { - Map attachtag = (Map) attr.get("attachtag"); - if (attachtag.containsKey("crawlDataFlag")) { - // String crawlDataFlag = (String) attachtag.get("crawlDataFlag"); -// if(crawlDataFlag.contains(":")){ -// String crawlDataFlagtype=crawlDataFlag.split(":")[0]; -// if(crawlDataFlagtype.equals("url")){ -// dataMap.put("crawlDataFlagType","2"); -// }else if (crawlDataFlagtype.contains("account")){ -// dataMap.put("crawlDataFlagType","1"); -// }else if (crawlDataFlagtype.contains("keyword")){ -// dataMap.put("crawlDataFlagType","0"); -// } -// } - dataMap.put("crawlDataFlag", attachtag.get("crawlDataFlag")); - } else { - dataMap.put("crawlDataFlag", "没有数据采集标识位"); - } - if (attachtag.containsKey("project_name")) { - dataMap.put("project_name", attachtag.get("project_name")); - } else { - dataMap.put("project_name", "没有添加项目名"); - } - if (attachtag.containsKey("listbrand")) { - dataMap.put("listbrand", attachtag.get("listbrand")); - } - } - if (attr.containsKey("purl")) { - dataMap.put("purl", attr.get("purl")); - } - } - }catch (Exception e){ - e.printStackTrace(); - } - //return dataMap; - } - - /** - * 这个方法中,字段映射取的是 前台ES 的字段映射哦 - */ - private ParralleData getParralleData(Map fieldInfoMap, Map newdataMap, - String type, String cid, String projectName,String source,String dns) { - try{ - Map>> fieldData = fieldNormaliz.getFieldDataMap(); - Map> fieldtypeDataMap = fieldData.get(1); - //System.out.println( cid + " --- " + type + " *** "+JsonUtils.toJSONString(fieldtypeDataMap)); - Map fieldDataMap = fieldtypeDataMap.get(type); - Map fixFieldMap = this.loadFixedField(type, 1, cid,source,dns);// 获取一些必须的字段数据 - Set keyset = fixFieldMap.keySet(); - //System.out.print(keyset+"sadasdasd"); - for (String key : keyset) { - fieldDataMap.put(key, key); - } - // System.out.println("cid"+"ssssssssss"+JsonUtils.toJSONString(fieldDataMap)); - fieldDataMap.remove("cid"); - - newdataMap.putAll(fixFieldMap); - - String datanew = JSONObject.toJSONString(newdataMap); // 组装了基础参数的数据 - // System.out.println(datanew+"我是基础参数啊datanew"); - MfFieldInfo fieldInfo = fieldInfoMap.get(type); - List kafkaJsonString = fieldInfo.getKafkaJsonString(); // [attr] - List kafkaJsonArray = fieldInfo.getKafkaJsonArray(); // [comments, replys] - // System.out.println("\"===============\"我的数据啊"+kafkaJsonArray+"==============="); - // fieldDataMap 是映射好的字段Map - ParralleData pd = new ParralleData(); - - this.exeFileData(datanew, kafkaJsonString, kafkaJsonArray, fieldDataMap, - pd.getChunkId("", 0, -1), pd, type, projectName, cid); - return pd; - - }catch (Exception e){ - e.printStackTrace(); - return null; - } - } - -// private Map disposeEcComment(String cid,Map newdataMap) { -// try{ -// if(newdataMap.containsKey("product_id")) { -// String product_id = (String) newdataMap.get("product_id"); -// if(null != product_id && !("").equals(product_id)) { -// String keys = cid + "#" + product_id; -// int dbindex = hash(keys, 9); -// if (RedisUtil.exists(keys, dbindex)) { // 先去 redis中查询是否存在,不存直接忽略 -// LOG.info("[ForegroundExtendType] exec >>> 电商灌数:该商品在 Redis 中有!!! keys = " + keys + " ; dbindex = " + dbindex); -// newdataMap = getECContentDetail(keys, newdataMap, dbindex); -// if (newdataMap == null) { -// LOG.error("[ForegroundExtendType] exec >>> 电商灌数:从Redis中获取电商详情信息失败!!! keys = " + keys + " ; dbindex = " + dbindex); -// return null; -// } -// } else { -// LOG.error("[ForegroundExtendType] exec >>> 电商灌数:该 key 在 Redis 中不存在!!! keys = " + keys + " ; dbindex = " + dbindex); -// return null; -// } -// } -// } -// return newdataMap; -// }catch (Exception e){ -// e.printStackTrace(); -// return null; -// } -// } - - /** - * 将 bbs 数据灌入 ES - * 因为论坛是不区分页面类型的 bbspost 中 如果有 replys 中的,只要有 replys 就说明有评论,需要将 replys 中的内容灌入到 type_comment 的索引中 - */ - private void putBBSpostData( String cid, String type, - String projectName, Map fieldInfoMap, - Map dataMap, int kafkaServerName, - String kafkaSuffixName,String source,String dns) { - int bussinessType=2; - try{ - if(bussinessType != 1) { // 往后台灌 - - Map newdataMap = new HashMap(dataMap); - if(newdataMap.containsKey("contents")){ - if (newdataMap.containsKey("replys")) { - newdataMap.remove("replys"); - } - ParralleData pd = getParralleData(fieldInfoMap, newdataMap, type, cid, projectName,source,dns); - List> datas = pd.getParralleData(); - datas = new ArrayList<>(new HashSet<>(datas)); - this.installData(kafkaServerName, datas, kafkaName, true, - fieldNormaliz.getIsSemtimentApi(), type, cid, projectName, kafkaSuffixName,tableInfoMap); - } - - - Map newdataMap2 = new HashMap(dataMap); - if(newdataMap2.containsKey("replys") && !newdataMap2.get("replys").toString().equals("[]")) { - //if(newdataMap.get("replys").toString().equals("[]")){ - // System.out.println("+++++++====================---------------"+newdataMap2.get("replys")); - //} - type=type + "_comment"; - - Map>> fieldDatareply = fieldNormaliz.getFieldDataMap(); - Map> fieldtypeDataMapreply = fieldDatareply.get(1); - //System.out.println( cid + " --- " + type + " *** "+JsonUtils.toJSONString(fieldtypeDataMap)); - Map fieldDataMapreply = fieldtypeDataMapreply.get(type); - Map fixFieldMapreply = this.loadFixedField(type, 0, cid,source,dns);// 获取一些必须的字段数据 - Set keyset = fixFieldMapreply.keySet(); - for (String key : keyset) { - fieldDataMapreply.put(key, key); - } - // System.out.println("cid"+"ssssssssss"+JsonUtils.toJSONString(fieldDataMap)); - fieldDataMapreply.remove("cid"); - - newdataMap2.putAll(fixFieldMapreply); - - String datanew = JSONObject.toJSONString(newdataMap2); // 组装了基础参数的数据 - // System.out.println(datanew+"我是基础参数啊datanew"); - MfFieldInfo fieldInfo = fieldInfoMap.get(type); - List kafkaJsonString = fieldInfo.getKafkaJsonString(); // [attr] - List kafkaJsonArray = fieldInfo.getKafkaJsonArray(); // [comments, replys] - //System.out.println("\"===============\"我的数据啊"+kafkaJsonArray+"==============="); - // fieldDataMap 是映射好的字段Map - ParralleData pd2 = new ParralleData(); - - this.exeFileData(datanew, kafkaJsonString, kafkaJsonArray, fieldDataMapreply, - pd2.getChunkId("", 0, -1), pd2, type, projectName, cid); - - - List> datareply = pd2.getParralleData(); - datareply = new ArrayList<>(new HashSet<>(datareply)); - this.installData(kafkaServerName, datareply, kafkaName, true, - fieldNormaliz.getIsSemtimentApi(), type, cid, projectName, kafkaSuffixName,tableInfoMap); - - - }else{ - System.out.println("============没有回帖============================================================================="); - System.out.println(JSONObject.toJSONString(newdataMap)); - } - }else { // 往前台灌 - } - }catch (Exception e){ - e.printStackTrace(); - } - } - - - /** - * 获取redis 中的电商主贴信息 - */ - private Map disposeEcComment(String cid,Map newdataMap) { - try{ - if(newdataMap.containsKey("product_id")) { - String product_id = (String) newdataMap.get("product_id"); - if(null != product_id && !("").equals(product_id)) { - String keys = cid + "#" + product_id; - int dbindex = hash(keys, 9); - if (RedisUtil.exists(keys, dbindex)) { // 先去 redis中查询是否存在,不存直接忽略 - LOG.info("[ForegroundExtendType] exec >>> 电商灌数:该商品在 Redis 中有!!! keys = " + keys + " ; dbindex = " + dbindex); - newdataMap = getECContentDetail(keys, newdataMap, dbindex); - if (newdataMap == null) { - LOG.error("[ForegroundExtendType] exec >>> 电商灌数:从Redis中获取电商详情信息失败!!! keys = " + keys + " ; dbindex = " + dbindex); - return null; - } - } else { - LOG.error("[ForegroundExtendType] exec >>> 电商灌数:该 key 在 Redis 中不存在!!! keys = " + keys + " ; dbindex = " + dbindex); - return null; - } - } - } - return newdataMap; - }catch (Exception e){ - e.printStackTrace(); - return null; - } - } - - /** - * 获取电商详情数据,提取需要的字段 - */ - private Map getECContentDetail(String keys, Map newdataMap,int dbindex) { - try{ - String value = RedisUtil.get(keys,dbindex); - if(null != value && !("").equals(value)) { - Map eccontentMap = JsonUtils.parseObject(value); - eccontentMap.remove("type"); - eccontentMap.remove("attr"); - eccontentMap.remove("creation_time"); - newdataMap.putAll(eccontentMap); - } - }catch (Exception e){ - e.printStackTrace(); - return null; - } - return newdataMap; - } - - @Override - public void run() { - exec(); - } - - - - public int hash(String str, int size) { - String md5 = calcMD5(str); - String head = md5.substring(0, 4); - return Integer.parseInt(head, 16) % size; - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParentExctendType.java b/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParentExctendType.java deleted file mode 100644 index 02e38bc..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParentExctendType.java +++ /dev/null @@ -1,851 +0,0 @@ -package com.bfd.mf.service.extendType; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.bfd.crawler.kafka7.KfkProducer; -import com.bfd.mf.entity.AreaCategoryEntity; -import com.bfd.mf.entity.TypeEntity; -import com.bfd.mf.entity.mysql.*; -import com.bfd.mf.service.tools.*; -import com.bfd.mf.service.utils.AvailcontentApiUtils; -import com.bfd.mf.service.utils.HlkkwUtils; -import com.bfd.mf.service.utils.OpinionApiUtils; -import com.bfd.mf.service.utils.SentimentApiUtils; -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.bfd.nlp.common.util.string.TStringUtils; -import com.hankcs.hanlp.HanLP; -import com.hankcs.hanlp.seg.common.Term; -import net.sf.json.JSONObject; -import org.apache.commons.lang3.StringUtils; -import org.apache.log4j.Logger; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import java.util.regex.PatternSyntaxException; - -public class ParentExctendType { - - private static final Logger LOG = Logger.getLogger(ParentExctendType.class); - public Map loadFixedField() { - return null; - } - - - private static int bussinessType = 1; - /** - * 组装一些默认值 1 - */ - public Map loadFixedField(String type ,int bbsifcontent,String cid,String source,String dns){ - Map fixFieldMap = new HashMap(); - - long dateTime = System.currentTimeMillis() ; - fixFieldMap.put("enSource",cid.toLowerCase()); - if("".equals(source)||StringUtils.isBlank(source)) { - fixFieldMap.put("source", MfSouceInfo.souceInfos.get(cid)); - } - if(type.equals(TypeEntity.KEYWORD) || type.equals(TypeEntity.WEIBO) || - type.equals(TypeEntity.NEWSCONTENT) || type.equals(TypeEntity.REPOST) || - type.equals(TypeEntity.STORYDETAILPAGE) ||type.equals(TypeEntity.BBSPOST)|| type.equals("bbspost_comment")){ // 微博关键词,微博大V,新闻主贴,论坛,海外社交主贴 - if(bbsifcontent == 1){ - fixFieldMap.put("primary", 1); - fixFieldMap.put("primaryPost", "1"); - }else{ - fixFieldMap.put("primary", 0); - fixFieldMap.put("primaryPost", "0"); - //fixFieldMap.put("sign", 2); // 2=评论,1=转发 - } - }else if (type.contains("user")){ - fixFieldMap.put("primary",2); - fixFieldMap.put("primaryPost", "2"); - }else if (type.equals(TypeEntity.ECCOMMENT)){ - fixFieldMap.put("primary",0); - fixFieldMap.put("primaryPost", "0"); - }else if (type.equals(TypeEntity.ECCONTENT)){ - fixFieldMap.put("primary",1); - fixFieldMap.put("primaryPost", "5"); - }else if (type.equals(TypeEntity.SOCIALCOMMENT)){ - fixFieldMap.put("primary",0); - fixFieldMap.put("sign", 2); - } - else if (type.equals(TypeEntity.SOCAILFOLLOW)){ - fixFieldMap.put("primary",0); - fixFieldMap.put("sign", 1); - }else if (type.equals(TypeEntity.SOCAILFANS)){ - fixFieldMap.put("primary",2); - fixFieldMap.put("sign", 2);//2 粉丝 1用户 - } - else{ - fixFieldMap.put("primary", 0); - fixFieldMap.put("primaryPost", "0"); - if(type.equals(TypeEntity.REPOST)){ // 转发 - fixFieldMap.put("sign", 1); - }else if(type.equals(TypeEntity.COMMENT)){ // 评论 - fixFieldMap.put("sign", 2); - } - } - // 创建时间 - fixFieldMap.put("createTime", dateTime); - fixFieldMap.put("createTimeStr", DataCheckUtil.getCurrentTime(dateTime)); - fixFieldMap.put("createDay", DataCheckUtil.getDay(dateTime)); - fixFieldMap.put("createDate", DataCheckUtil.getDate(dateTime)); - fixFieldMap.put("lastModifiedTime", dateTime) ; - // 数据类型 跟 站点相关 相关 - fixFieldMap.put("docType", MfDoctypeInfo.docTypeInfos.get(cid)); - fixFieldMap.put("channel", MfChannelInfo.channelInfoMap.get(cid)); - fixFieldMap.put("channelNum", MfChannelInfo.channelnumInfoMap.get(cid)); - - if("".equals(dns)||StringUtils.isBlank(dns)) { - fixFieldMap.put("dns", MfChannelInfo.domain_nameInfoMap.get(cid)); - } - - - fixFieldMap.put("contentTag","nomal"); - // 商情后台打标预留的字段 - fixFieldMap.put("dataCount",0); -// fixFieldMap.put("egc",0); -// fixFieldMap.put("pgc",0); -// fixFieldMap.put("ugc",0); - // 打情感需要预留的字段 - fixFieldMap.put("sentiment", "0"); - fixFieldMap.put("summary", ""); - // 数据有效性 - fixFieldMap.put("availability",1); - return fixFieldMap ; - } - - - - - public void exeFileData(String fieldValue , List kafkaJsonString, - List kafkaJsonArray, Map fieldDataMap, - int chunkId, ParralleData pd, String type, String projectName, String cid){ - try { - JSONObject dataMap = JSONObject.fromObject(fieldValue); - // System.out.println(dataMap); - Set keySet = dataMap.keySet(); - for(String colKey: keySet){ - Object colValue = dataMap.get(colKey) ; - if(kafkaJsonString.contains(colKey)){ - try{ - if(StringUtils.isNotBlank(colValue.toString())){ - exeFileData(colValue.toString(), kafkaJsonString , kafkaJsonArray, fieldDataMap, chunkId , pd, type, projectName, cid); - } - }catch(Exception e){ - e.printStackTrace(); - LOG.error("[ParentExctendType] >>> exeFileData kafkaJsonString colValue :"+colValue) ; - } - } else if (kafkaJsonArray.contains(colKey)){ - try{ - if(StringUtils.isNotBlank(colValue.toString())){ - List dataList = JSON.parseArray(colValue.toString(),String.class); - if(dataList.size() > 0){ - for(String dataObject : dataList){ - int childChunkId = pd.getChunkId(dataObject, 0, chunkId); - exeFileData(dataObject, kafkaJsonString, kafkaJsonArray, fieldDataMap ,childChunkId , pd, type, projectName, cid); - } - } - } - }catch(Exception e){ - e.printStackTrace(); - LOG.error("[ParentExctendType] >>> exeFileData kafkaJsonArray colValue :"+colValue) ; - } - } else if (fieldDataMap.containsKey(colKey)){ - if(colValue!=null){ - pd.addData(chunkId, fieldDataMap.get(colKey), colValue.toString(), type, projectName, cid); - } - } - } - } catch (Exception e) { - e.printStackTrace(); - LOG.error("[ParentExctendType >>> exeFileData data "+fieldValue); - } - } - - - /** - * 组装写入ES 的数据 - */ - public void installData(int kafkaServerName, List> datas, - String KafkaTopic, boolean iscallhlk, int isSenApi, - String type, String cid, - String projectName, String kafkaSuffixName,Map> tableInfoMap) { - LOG.debug("ParentExctendType installData >>> start install data!!!!!"); - for (Map data : datas) { - //LOG.info("[ParentExctendType] installData : cid = " + cid + " ; data = " + JsonUtils.toJSONString(data)); - if (data.size() > 0) { - Map newmap = new HashMap(data); - Map time = new HashMap<>(); - String title = ""; - String primary =""; - if(newmap.containsKey("primary")){ - primary = newmap.get("primary"); - } - if(newmap.containsKey("title")){ - title = newmap.get("title"); - } - time.put("sendreadtime",System.currentTimeMillis()); - String content = ""; - if(newmap.containsKey("content")) { - content = newmap.get("content"); - if (!newmap.containsKey("title")) { - title = content; - newmap.put("title", content); - newmap.put("titleLength", newmap.get("contentLength")); - newmap.put("titleSimHash", newmap.get("contentSimHash")); - // 调用之前替换掉 content 中乱七八糟的符号之类的 - } - String pubTime=newmap.get("pubTime"); - //Integer contentLength= Integer.valueOf(newmap.get("contentLength")); - time.put("beginsentiment",System.currentTimeMillis()); - System.out.println(isSenApi+"isSenApi"); - if(1==isSenApi){ - if (StringUtils.isNotBlank(content)&&"1".equals(primary)) { - try { - newmap = callhlKeyword(iscallhlk, content, newmap); //hlKeywords & sysKeywords 提取 - newmap = callsysAbstract(content, newmap); // sysAbstract 提取 - newmap = callOpinions(content, newmap); // 词云-评价 提取 - newmap = callPlace(title,content,newmap); // 词云-地点 提取 - SentimentApiUtils sentimentApiUtils = new SentimentApiUtils(); - Double sentiment = sentimentApiUtils.getSentimentValue(content); - newmap.put("sysSentiment",sentiment.toString()); - content = StringFilter(content); - } catch (Exception e) { - //newmap.put("sysSentiment",0); - e.printStackTrace(); - } - } - } - - - try { - //if (pubTime.compareTo("1601481600866")<=0&& pubTime.compareTo("1609430399866")>=0){ - this.callPhrase(title, content, newmap, data.get("docType")); // 长文本处理 - //} - // 如果网络不同不能调用文本相关的结果 - } catch (Exception e) { - e.printStackTrace(); - } - } - newmap = typeIsKeyword(type,newmap,title,content); - newmap = aboutAddress(newmap); - time.put("endsentiment",System.currentTimeMillis()); - time.put("sbeginsentkafka",System.currentTimeMillis()); - - if(!newmap.containsKey("isDownload")){ - newmap.put("isDownload","false"); - } - - if(!newmap.containsKey("_id_") && newmap.containsKey("dataId")){ - newmap.put("_id_",MfMD5Util.GetMD5Code(newmap.get("dataId"))); - } -// if(newmap.containsKey("docType") && newmap.get("docType").toString().equals("item")){ -// newmap.put("primary","1"); -// newmap.remove("primaryPost"); -// } - if(type.contains("comment") || type.contains("socialComment")){ - //System.out.println("评论数据哦,docId = " + newmap.get("docId") + " == "+newmap.get("content") + " ----- " + newmap.get("postId") + " -- "+newmap.get("commentId")); - String dataId = cid+"#"+newmap.get("docId")+"#"+newmap.get("pubTime")+"#"+newmap.get("author")+"#"+newmap.get("content"); - newmap.put("dataId",MfMD5Util.GetMD5Code(dataId)); - newmap.put("_id_",MfMD5Util.GetMD5Code(dataId)); - } - else if(type.contains("socialFans")){ - String dataId = cid+"#"+newmap.get("docId")+"#"+newmap.get("pubTime")+"#"+newmap.get("forwardUserId")+"#"+newmap.get("forwardUrl"); - newmap.put("dataId",MfMD5Util.GetMD5Code(dataId)); - newmap.put("_id_",MfMD5Util.GetMD5Code(dataId)); - } - else if(type.contains("socialFollow")){ - String dataId = cid+"#"+newmap.get("docId")+"#"+newmap.get("pubTime")+"#"+newmap.get("authorId")+"#"+newmap.get("forwardUrl"); - newmap.put("dataId",MfMD5Util.GetMD5Code(dataId)); - newmap.put("_id_",MfMD5Util.GetMD5Code(dataId)); - } - - - time.put("sendsentkafka",System.currentTimeMillis()); - if(newmap.containsKey("processtime")){ - try { - Map datare = (Map) JsonUtils.parseObject((String)newmap.get("processtime")); - datare.putAll(time); - newmap.put("processtime",JsonUtils.toJSONString(datare)); - } catch (Exception e) { - e.printStackTrace(); - } - - } - JSONObject jsonObject = JSONObject.fromObject(newmap); - if(!newmap.containsKey("docId")){ - WriteMethod.writeMethod("error.txt", jsonObject.toString()); - } - LOG.info(jsonObject.toString());//掉情感的数据 - Map tableInfo = tableInfoMap.get(bussinessType) ; - String res = convertData(jsonObject, tableInfo); - System.out.println(res); - try { - if(jsonObject.toString().length()<104000000){ - if("true".equals(newmap.get(TypeEntity.ISDOWNLOAD))){ - KfkProducer.getInstance(kafkaServerName,KafkaTopic).send(KafkaTopic+"_"+kafkaSuffixName+"fast",res); - }else{ - KfkProducer.getInstance(kafkaServerName,KafkaTopic).send(KafkaTopic+"_"+kafkaSuffixName,res); - } - }else { - LOG.error("send kafka error "+jsonObject.toString()); - } - } catch (Exception e) { - e.printStackTrace(); - } - - } - } - } - - -// public void installData(int kafkaServerName,String KafkaTopic,String kafkaSuffixName,List> datas, -// String type, String cid) { -// LOG.debug("ParentExctendType installData >>> start install data!!!!!"); -// for (Map data : datas) { -// //LOG.info("[ParentExctendType] installData : cid = " + cid + " ; data = " + JsonUtils.toJSONString(data)); -// if (data.size() > 0) { -// Map newmap = new HashMap(data); -// String title = ""; -// if(newmap.containsKey("title")){ -// title = newmap.get("title"); -// } -// -// String content = ""; -// if(newmap.containsKey("content")) { -// content = newmap.get("content"); -// if (!newmap.containsKey("title")) { -// title = content; -// newmap.put("title", content); -// newmap.put("titleLength", newmap.get("contentLength")); -// newmap.put("titleSimHash", newmap.get("contentSimHash")); -// // 调用之前替换掉 content 中乱七八糟的符号之类的 -// } -//// if (StringUtils.isNotBlank(content)) { -//// newmap = callhlKeyword(iscallhlk, content, newmap); //hlKeywords & sysKeywords 提取 -//// newmap = callsysAbstract(content, newmap); // sysAbstract 提取 -//// newmap = callOpinions(content, newmap); // 词云-评价 提取 -//// } -//// content = StringFilter(content); -//// this.callPhrase(title, content, newmap, data.get("docType")); -// // 如果网络不同不能调用文本相关的结果 -// } -// newmap = typeIsKeyword(type,newmap,title,content); -// newmap = aboutAddress(newmap); -// -// -// if(!newmap.containsKey("isDownload")){ -// newmap.put("isDownload","false"); -// } -// if(!newmap.containsKey("_id_")){ -// newmap.put("_id_",MfMD5Util.GetMD5Code(newmap.get("dataId"))); -// } -// -// if(type.contains("comment")){ -// System.out.println("评论数据哦,docId = " + newmap.get("docId") + " == "+newmap.get("content")); -// String dataId = cid+"#"+newmap.get("docId")+"#"+newmap.get("pubTime")+"#"+newmap.get("author")+"#"+newmap.get("content"); -// newmap.put("dataId",MfMD5Util.GetMD5Code(dataId)); -// newmap.put("_id_",MfMD5Util.GetMD5Code(dataId)); -// } -// -// Map>> subjectTaskMap = SubjectTask.subjectTaskMap; -// String crawlDataFlag = newmap.get("crawlDataFlag"); -// if(subjectTaskMap.containsKey(crawlDataFlag)){ -// System.out.println("----- " + subjectTaskMap.get(crawlDataFlag)); -// } -// -// if(newmap.containsKey("pubTimeStr")){ -// String pubTimeStr = newmap.get("pubTimeStr"); -// String indexName = "cl_index_" + pubTimeStr.split(" ")[0].trim(); -// newmap.put("indexName",indexName); -// } -// -// JSONObject jsonObject = JSONObject.fromObject(newmap); -// //WriteMethod.writeMethod("result.txt", jsonObject.toString()); -// //KfkProducer.getInstance(kafkaServerName,KafkaTopic).send(KafkaTopic+"_"+kafkaSuffixName, jsonObject.toString()); -// } -// } -// } - - private Map aboutAddress(Map newmap) { - try { - if (AreaCategoryMappingUtils.set.size() > 0) { - resetWeiboArea(newmap, "province"); - resetWeiboArea(newmap, "city"); - resetWeiboArea(newmap, "location"); - AreaCategoryEntity areaCategoryCityEntity = null; - AreaCategoryEntity areaCategoryAreaEntity = null; - AreaCategoryEntity areaCategoryProvinceEntity = null; - for (AreaCategoryEntity areaCategoryEntity : AreaCategoryMappingUtils.set) { - String city = areaCategoryEntity.getCity(); - String area = areaCategoryEntity.getArea(); - String province = areaCategoryEntity.getProvince(); - if (newmap.containsKey("city")) { - String originalProvince = ""; - String ocity = ""; - String originalCity = newmap.get("city"); - if (originalCity.contains(" ")) { - String[] citys = originalCity.split(" "); - originalProvince = citys[0]; - ocity = citys[1]; - } else { - ocity = originalCity; - if (newmap.containsKey("province")) { - originalProvince = newmap.get("province"); - } - } - try { - if (ocity.contains(city) && originalProvince.contains(province)) { - areaCategoryCityEntity = JSON.parseObject(JSON.toJSONString(areaCategoryEntity), - AreaCategoryEntity.class); - } - if (ocity.contains(area) && originalProvince.contains(province)) { - areaCategoryAreaEntity = JSON.parseObject(JSON.toJSONString(areaCategoryEntity), - AreaCategoryEntity.class); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - if (newmap.containsKey("province")) { - String originalProvince = newmap.get("province"); - if (originalProvince.contains(province)) { - areaCategoryProvinceEntity = JSON.parseObject(JSON.toJSONString(areaCategoryEntity), - AreaCategoryEntity.class); - } - } - if (newmap.containsKey("location")) { - String location = newmap.get("location"); - if (TStringUtils.isNotEmpty(location)) { - if (location.contains(province)) { - areaCategoryProvinceEntity = JSON.parseObject(JSON.toJSONString(areaCategoryEntity), - AreaCategoryEntity.class); - } - if (location.contains(province) && location.contains(city)) { - areaCategoryCityEntity = JSON.parseObject(JSON.toJSONString(areaCategoryEntity), - AreaCategoryEntity.class); - } - } - } - } - boolean cityFlag = false; - if (areaCategoryAreaEntity != null) { - updateRegionInfo(newmap, areaCategoryAreaEntity); - cityFlag = true; - } - if (areaCategoryCityEntity != null && !cityFlag) { - areaCategoryCityEntity.setArea(null); - updateRegionInfo(newmap, areaCategoryCityEntity); - cityFlag = true; - } - if (areaCategoryProvinceEntity != null && !cityFlag) { - areaCategoryProvinceEntity.setArea(null); - areaCategoryProvinceEntity.setCity(null); - updateRegionInfo(newmap, areaCategoryProvinceEntity); - } - } - }catch (Exception e){ - e.printStackTrace(); - } - return newmap; - } - - private Map typeIsKeyword(String type, Map newmap,String title,String content) { - if(type.equals("keyword")){ // 如果是微博的关键词入口博文 - if(newmap.containsKey("forwardContent") && StringUtils.isNotEmpty(newmap.get("forwardContent"))){ - title = newmap.get("forwardContent") ; - }else{ - if (StringUtils.isNotEmpty(content)){ - title = content; - } - } - /**去除表情*/ - String filterTitle = WeiboFilterUtils.removeEmotion(title); - /**去除Url*/ - filterTitle = WeiboFilterUtils.removeURLs(filterTitle); - /**去除用户标识*/ - filterTitle = WeiboFilterUtils.removeUserMentions(filterTitle); - if(StringUtils.isNotEmpty(filterTitle)){ - List terms = HanLP.segment(filterTitle); - StringBuffer sb = new StringBuffer(); - for (Term term:terms - ) { - // 移除地理标识 - if(term.nature.equals("ns") || term.nature.equals("w")){ - continue; - }else{ - sb.append(term.word); - } - } - title = sb.toString(); - } - List phraseLists = HanLP.extractPhrase(title, 5); - StringBuffer sb =new StringBuffer("weibo"); - if(TObjectUtils.isListEmpty(phraseLists)){ - if(TStringUtils.isEmpty(title)) - sb.append("_"+System.nanoTime()); - else - sb.append("_"+title); - }else{ - for (String word:phraseLists) { - sb.append("_"+word); - } - } - newmap.put("finalPhrase", sb.toString()); - } - return newmap; - } - - private String StringFilter(String str) throws PatternSyntaxException { - String regEx = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"; - Pattern p = Pattern.compile(regEx); - Matcher m = p.matcher(str); - return m.replaceAll("").trim(); - } - - - /** - * 页面类型是微博的话需要此方法 获取省份和城市 - */ - private static void resetWeiboArea(Map jsonObject,String field){ - String docType= jsonObject.get("docType"); - if(docType.equals("weibo")){ - if(jsonObject.containsKey(field)){ - String value = jsonObject.get(field); - for (String d_province:AreaCategoryMappingUtils.DIRECT_CITY) { - if(value.contains(d_province)){ - jsonObject.put("province",d_province); - jsonObject.put("city",d_province); - } - } - } - } - } - - //dj-20200113 获取地区信息,主要针对微博 - private static void updateRegionInfo(Map jsonObject,AreaCategoryEntity areaCategoryEntity){ - - if(TStringUtils.isNotEmpty(areaCategoryEntity.getCountry())){ - jsonObject.put("country",areaCategoryEntity.getCountry()); - } - if(TStringUtils.isNotEmpty(areaCategoryEntity.getProvince())){ - jsonObject.put("province",areaCategoryEntity.getProvince()); - } - if(TStringUtils.isNotEmpty(areaCategoryEntity.getCity())){ - jsonObject.put("city",areaCategoryEntity.getCity()); - } - if(TStringUtils.isNotEmpty(areaCategoryEntity.getArea())){ - jsonObject.put("area",areaCategoryEntity.getArea()); - } - } - // dj-20200113 获取组装字段 emotionEntry - private String callEmotionEntry(){ - JSONArray jsonArray = new JSONArray(); - JSONObject entryObject= new JSONObject(); - entryObject.put("entryName","default"); - Double emotionValue = 0.5d; - entryObject.put("emotionValue", emotionValue); - String offSet = ""; - entryObject.put("offSet",offSet); - jsonArray.add(entryObject); - return jsonArray.toJSONString() ; - } - -// -// public static void main(String[] args) { -// Map newmap = new HashMap(); -// newmap = callsysAbstract("摘要提取", newmap); // sysAbstract 提取 -// -// } -// - // dj-20200113 获取组装字段 sysAbstract - private Map callsysAbstract(String content , Map newmap){ - String sysAbstract = "" ; - if(content.length() > 10){ - sysAbstract = HlkkwUtils.getSysAbstract(content); - }else{ - sysAbstract = content+ "。"; - } - newmap.put("sysAbstract", sysAbstract) ; - return newmap ; - } - - - - - // dj-20200113 获取组装字段 hlKeywords 和 sysKeywords ; 样例:{hlKeywords=["欧莱雅","一直"], sysKeywords={"一直":0.9945585,"欧莱雅":0.9945585}} - private Map callhlKeyword(boolean iscallhlk, String content, Map newmap){ - List hlKeyword = new ArrayList(); - if(iscallhlk){ - hlKeyword = HlkkwUtils.getHLKkeyword(content, newmap); - } - if(JSON.toJSONString(hlKeyword).length()<8){ - newmap.put("hlKeywords", JSON.toJSONString(new ArrayList())); - }else { - newmap.put("hlKeywords", JSON.toJSONString(hlKeyword)); - } - return newmap ; - } - - // dj-20200113 availability 这个参数的意思是判断是否为有效数据 - private Map callPost(String content, Map newmap){ - newmap.put("availability", AvailcontentApiUtils.post(content)+""); - return newmap ; - } - - // dj-20200113 contentTag 该参数默认为 nomal 同时获取 hashTags expression 话题和表情 - private Map callcontentTag(Map newmap, String docType,String content){ - return HlkkwUtils.initContentTag(newmap, docType, content); - } - // dj-20200113 获取组装字段 places 词云 - 地点 - private Map callPlace(String content ,String title, Map newmap){ - List places = HanLPUtils.placeRecognize(new String[]{content,title});; - newmap.put("places", JSON.toJSONString(places)); - return newmap ; - } - - // dj-20200113 opinions 字段 情感词提取,词云-评价,主要针对微博和电商的数据 - private Map callOpinions(String content , Map newmap){ - List opinion = OpinionApiUtils.getOpinion(content) ; - newmap.put("opinions", JSON.toJSONString(opinion)); - return newmap ; - } - - // 字段的截取 - private String callPhrase(String title ,String content, Map newmap, String docType){ - return HlkkwUtils.processLongText(title, content, newmap, docType) ; - } - -// public static void main(String[] args) { -// ParentExctendType p = new ParentExctendType(); -// //String content = "【世卫组织:#有效新冠疫苗可能会在年底出现#】世界卫生组织3日表示,虽然有效新冠疫苗的交付目前暂无确切时间表,但到今年年底可能会有候选疫苗显示出对新冠病毒有效,关键问题是疫苗产能能否跟上需求。世卫组织已就未来疫苗产能问题与业界充分沟通,呼吁其做好规划,以便未来能通过技术转移或 \u200B\u200B\u200B\u200B...展开全文c"; -// String content = "【香港特区国安委正式成立,林郑月娥担任主席;法国总理辞职,新总理是他| 早读】O香港特区国安委正式成立,林郑月娥担任主席;...-上海今日24-29℃ 多云到阴-骆惠宁任香港国安委顾问-山东通报苟晶反映被顶替上学情况-北京低风险地区出京不再需要阴性证明-北京女子核酸阳性,隔离期多次破坏报警器外出-研究:新冠病毒可能会 \u200B\u200B\u200B\u200B...展开全文"; -// Map a = new HashMap<>(); -// a = p.callhlKeyword(true,content,a,1); -// a = p.callPlace(content,content,a); -// a = p.callOpinions(content,a); -// a = p.callcontentTag(a,"weibo",content); -// System.out.println( JSONObject.fromObject(a).toString()); -// -//// ParentExctendType exctendType = new ParentExctendType(); -//// boolean iscall = true; -//// String content = "一直用欧莱雅"; -//// Map newmap = new HashMap<>(); -//// int bussinessType = 1; -//// newmap = exctendType.callhlKeyword(iscall,content,newmap,bussinessType); -//// System.out.println(newmap); -// } - - -// public static void main(String[] args) { -// -// ParentExctendType parentExctendType = new ParentExctendType(); -// -// //String content = "{\"cid\":\"Nxhs\",\"charset\":\"utf-8\",\"comments\":[{\"comment_time\":\"2019-09-06 18:31:04\",\"up_cnt\":0,\"comment_content\":\"66\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"东禾\",\"answers\":[{\"answers_time\":\"2019-01-01\",\"content\":\"123\",\"username\":\"zs\"},{\"answers_time\":\"2019-02-02\",\"content\":\"1234\",\"username\":\"zs1\"}]},{\"comment_time\":\"2019-08-27 15:14:45\",\"up_cnt\":0,\"comment_content\":\"666\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"珍艺\",\"answers\":[{\"answers_time\":\"2019-09-09\",\"content\":\"999\",\"username\":\"zs99\"},{\"answers_time\":\"2019-07-07\",\"content\":\"2222\",\"username\":\"zs222\"}]},{\"comment_time\":\"2019-08-18 13:43:24\",\"up_cnt\":0,\"comment_content\":\"66\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"麻辣妹纸\"},{\"comment_time\":\"2019-08-16 20:39:17\",\"up_cnt\":0,\"comment_content\":\"66\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"余香\"},{\"comment_time\":\"2019-08-11 15:22:19\",\"up_cnt\":0,\"comment_content\":\"666\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"ZERO\"},{\"comment_time\":\"2019-08-10 09:08:09\",\"up_cnt\":0,\"comment_content\":\"666\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"清贺贺\"},{\"comment_time\":\"2019-08-09 23:36:27\",\"up_cnt\":0,\"comment_content\":\"666\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"小红薯5B855028\"},{\"comment_time\":\"2019-08-09 23:36:08\",\"up_cnt\":0,\"comment_content\":\"666\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"小红薯5B855028\"},{\"comment_time\":\"2019-08-09 17:47:00\",\"up_cnt\":0,\"comment_content\":\"一组……组在哪?\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"可可(锞锞)\"},{\"comment_time\":\"2019-08-09 00:49:00\",\"up_cnt\":0,\"comment_content\":\"66\",\"news_id\":\"5d4251d100000000260298ea\",\"username\":\"雅望天堂_584D00FD\"}],\"type\":\"newscomment\",\"attr\":{\"tname\":\"小红书\",\"purl\":\"https://www.xiaohongshu.com/discovery/item/5d4251d100000000260298ea\",\"keyword\":\"哪吒\",\"attachtag\":{\"listbrand\":\"哪吒\",\"project_name\":\"Innovation_Compass\"}},\"news_id\":\"5d4251d100000000260298ea\",\"creation_time\":\"111223\"}" ; -// String content = "{\"attr\":{\"tname\":\"小红书\",\"purl\":\"https://www.xiaohongshu.com/discovery/item/5c33757c000000000900ffe6\",\"keyword\":\"生态保护\",\"attachtag\":{\"listbrand\":\"生态保护\",\"project_name\":\"VFC\"}},\"charset\":\"utf-8\",\"cid\":\"Nxhs\",\"comments\":[{\"comment_time\":\"2019-02-10 19:12:23\",\"up_cnt\":0,\"comment_content\":\"这么多垃圾还零污染,昧着良心说瞎话也稍微处理一下图片先啦[笑>哭R] [笑哭R] [笑哭R]\",\"username\":\"king\"},{\"comment_time\":\"2019-02-06 13:53:41\",\"up_cnt\":0,\"comment_content\":\"这身体\",\"username\":\"RXP一饶\"},{\"comment_time\":\"2019-01-27 16:31:40\",\"up_cnt\":0,\"comment_content\":\"美了美了美了美了\",\"username\":\"澳门酒店酒店管家\"},{\"comment_time\":\"2019-01-25 23:43:42\",\"up_cnt\":0,\"comment_content\":\"您好 在吗\",\"username\":\"小红薯E8F73B9\"},{\"comment_time\":\"2019-01-17 23:42:11\",\"up_cnt\":0,\"comment_content\":\"又是我羡慕的筷子腿,看来还要接着努力减肥了\",\"username\":\"拽拽的喵喵喵\"},{\"comment_time\":\"2019-01-13 14:53:42\",\"up_cnt\":1,\"comment_content\":\"生活到处>都是美,可是是缺这样的美景吗?不!是缺这样美丽的人!\",\"news_id\":\"5c33757c000000000900ffe6\",\"username\":\"花开院\"},{\"comment_time\":\"2019-01-12 10:21:27\",\"up_cnt\":0,\"comment_content\":\"超级棒\",\"username\":\"LCW\"},{\"comment_time\":\"2019-01-09 11:28:00\",\"up_cnt\":0,\"comment_content\":\"完美\",\"username\":\"蕉家高定XJXJ1616\"},{\"comment_time\":\"2019-01-09 08:31:37\",\"up_cnt\":0,\"comment_content\":\"这身材看了真受不了\",\"username\":\"情义丶杰倫 情聚四海\"},{\"comment_time\":\"2019-01-08 23:33:49\",\"up_cnt\":0,\"comment_content\":\"身材好啊\",\"username\":\"小红薯9142EA7\"}],\"creation_time\":1569378908,\"dataCount\":0,\"enSource\":\"nxhs\",\"news_id\":\"5c33757c000000000900ffe6\",\"plate\":\"\",\"primary\":0,\"primaryPost\":\"0\",\"projectName\":\"VFC\",\"sentiment\":\"0\",\"source\":\"小红书\",\"summary\":\"\",\"type\":\"newscomment\"}" ; -// List kafkaJsonString = new ArrayList(); -// kafkaJsonString.add("attr"); -// List kafkaJsonArray = new ArrayList(); -// kafkaJsonArray.add("comments"); -// kafkaJsonArray.add("answers"); -// Map fieldData = new HashMap(); -// //{creation_time=crawlTime, comment_time=pubTimeStr, replyfloor=replyfloor, sentiment=sentiment, -// //view_cnt=readCount, commenter_level=commenter_level, refer_comm_time=pubTimeStr, primaryPost=primaryPost, -// //plate=plate, purl=url, source=source, news_id=docId, content=content, dataCount=dataCount, down_cnt=down_cnt, -// //comment_content=content, listbrand=listBrand, keyword=keyword, enSource=enSource, summary=summary, -// //commenter_img=avatar, url=comment_url, collect_cnt=collectCount, refer_replyfloor=replyfloor, -// //refer_comm_username=author, up_cnt=attitudesCount, answers_time=pubTimeStr, favor_cnt=favor_cnt, -// //refer_comm_content=content, projectName=projectName, like_cnt=like_cnt, username=author, -// //reply_cnt=pageCommentCount, primary=primary} -// fieldData.put("creation_time", "crawlTime"); -// fieldData.put("comment_time", "pubTimeStr"); -// fieldData.put("replyfloor", "replyfloor"); -// fieldData.put("sentiment", "sentiment"); -// fieldData.put("readCount", "readCount"); -// fieldData.put("commenter_level", "commenter_level"); -// fieldData.put("refer_comm_time", "pubTimeStr"); -// fieldData.put("primaryPost", "primaryPost"); -// fieldData.put("plate", "plate"); -// fieldData.put("purl", "url"); -// fieldData.put("source", "source"); -// fieldData.put("news_id", "docId"); -// fieldData.put("content", "content"); -// fieldData.put("dataCount", "dataCount"); -// fieldData.put("down_cnt", "down_cnt"); -// fieldData.put("comment_content", "content"); -// fieldData.put("listbrand", "listBrand"); -// fieldData.put("keyword", "keyword"); -// fieldData.put("enSource", "enSource"); -// fieldData.put("summary", "summary"); -// fieldData.put("commenter_img", "avatar"); -// fieldData.put("url", "comment_url"); -// fieldData.put("collect_cnt", "collectCount"); -// fieldData.put("refer_replyfloor", "replyfloor"); -// fieldData.put("refer_comm_username", "author"); -// fieldData.put("up_cnt", "attitudesCount"); -// fieldData.put("answers_time", "pubTimeStr"); -// fieldData.put("favor_cnt", "favor_cnt"); -// fieldData.put("refer_comm_content", "content"); -// fieldData.put("projectName", "projectName"); -// fieldData.put("like_cnt", "like_cnt"); -// fieldData.put("username", "author"); -// fieldData.put("reply_cnt", "pageCommentCount"); -// fieldData.put("primary", "primary"); -// /*fieldData.put("comment_time", "time"); -// fieldData.put("up_cnt", "attruite"); -// fieldData.put("comment_content", "content"); -// fieldData.put("username", "author"); -// fieldData.put("cid", "source"); -// fieldData.put("answers_time", "time"); -// fieldData.put("content", "content"); -// fieldData.put("username", "author");*/ -// //ParralleData parralleData = new ParralleData(); -// //parentExctendType.exeFileData(content,kafkaJsonString, kafkaJsonArray ,fieldData, parralleData.getChunkId("", 0, -1), parralleData, "newscomment" ,2); -// //List> datas = parralleData.getParralleData(); -// /*System.out.println("111111111111 = "+datas.size()); -// for(Map data : datas) { -// System.out.println(data); -// } */ -// -// //System.out.println(parentExctendType.callEmotionEntry()); -// //Map map = new HashMap(); -// // System.out.println(parentExctendType.callcontentTag(map,"weibo","#nihao#")); -// // System.out.println(parentExctendType.callPlace("我在广州很好","我在北京很好",map)); -// -// System.out.println(new ParentExctendType().StringFilter("-")); -// -// } - - - - - private static String convertData(Map jsonData, Map tableInfo){ - try{ - Map jsonDatanew = new HashMap(jsonData); - for(Map.Entry entry : jsonDatanew.entrySet()){ - String key = entry.getKey() ; - Object dataValue = entry.getValue(); - if(key.equals("content") && dataValue != null){ - String content = dataValue.toString().replaceAll("[^\\u0000-\\uFFFF]", "") ; - jsonData.put(key, content); - } - if(key.equals("title") && dataValue != null){ - String title = dataValue.toString().replaceAll("[^\\u0000-\\uFFFF]", "") ; - jsonData.put(key, title); - } - if(key.equals("author") && dataValue != null){ - String author = dataValue.toString().replaceAll("[^\\u0000-\\uFFFF]", "") ; - jsonData.put(key, author); - } - if(key.equals("isVip") && dataValue != null){ - jsonData.put(key, 1); - } - if(key.equals("price") && dataValue != null){ - String price = dataValue.toString().replaceAll("¥", "").replace("$","").split("\\\\s+")[0] ; - jsonData.put(key, price); - } - if(key.equals("nomorprice") && dataValue != null){ - String nomorprice = dataValue.toString().replaceAll("¥", "").replace("$","") ; - jsonData.put(key, nomorprice); - } - if(key.equals("nomorprice") && dataValue != null){ - String nomorprice = dataValue.toString().replaceAll("¥", "").replace("$","") ; - jsonData.put(key, nomorprice); - } - if(tableInfo.containsKey(key)){ - // System.out.print("tableInfo"+tableInfo); - String value = tableInfo.get(key); - if(value.equals("Integer")){ - if(StringUtils.isNotBlank(dataValue.toString())){ - String dataValuenew = dataValue.toString(); - if(dataValuenew.contains(",")){ - dataValuenew = dataValuenew.replace(",", ""); - jsonData.put(key, Integer.valueOf(dataValuenew)) ; - }else if(dataValuenew.contains("顶")){ - dataValuenew = "0"; - jsonData.put(key, Integer.valueOf(dataValuenew)) ; - }else if(dataValuenew.endsWith("万")){ - dataValuenew = dataValuenew.substring(0, dataValuenew.indexOf("万")); - jsonData.put(key, new Double(Double.valueOf(dataValuenew) * 10000).intValue()) ; - }else if(dataValuenew.endsWith("万+")){ - dataValuenew = dataValuenew.substring(0,dataValuenew.indexOf("万+")) ; - jsonData.put(key, new Double(Double.valueOf(dataValuenew) * 10000).intValue()) ; - }else if (dataValue.toString().contains("店铺")){ - jsonData.put(key, 1) ; - } - else{ - try{ - if(dataValue.toString().contains("全部评论")){ - dataValue = dataValue.toString().replace("全部评论 (","").replace(")",""); - } - jsonData.put(key, Integer.valueOf(dataValue.toString())) ; - }catch(Exception e){ - System.out.println("ERROR key " + key + "; value " + dataValue.toString()); - jsonData.put(key, 0) ; - e.printStackTrace(); - LOG.error("parse data IntFormat err value:"+dataValue); - } - } - }else{ - jsonData.put(key, 0) ; - } - }else if(value.equals("List")){ - try { - if(StringUtils.isNotBlank(dataValue.toString())){ - jsonData.put(key, JSONArray.parseArray(dataValue.toString())) ; - } else{ - jsonData.put(key, new ArrayList()) ; - } - } catch (Exception e) { - //e.printStackTrace(); - String str=dataValue.toString().replace(", ",",").replace(",",","); - str = str.substring(1,str.length()-1).trim(); - String []strs =str.split(","); - // System.out.println(strs.length+"数组的长度啊"); - //System.out.println(str+"数组的长度啊"); - List list = Arrays.asList(strs); - jsonData.put(key, list) ; - } - }else if(value.equals("Long")){ - if(StringUtils.isNotBlank(dataValue.toString())){ - try{ - Long theValue = 0L; - if(dataValue.toString().contains("万")){ - Double dou = Double.valueOf(dataValue.toString().replace("万+","").replace("万","")); - theValue =new Double(dou * 10000).longValue(); ; - jsonData.put(key,theValue) ; - }else if (dataValue.toString().contains("+")){ - jsonData.put(key,Long.valueOf(dataValue.toString().replace("+",""))) ; - } - else { - jsonData.put(key,Long.valueOf(dataValue.toString())) ; - } - - }catch(Exception e){ - jsonData.put(key, 0) ; - e.printStackTrace(); - LOG.error("parse data LongFormat err value:"+dataValue); - } - }else{ - jsonData.put(key, 0) ; - } - } - } - } - return JsonUtils.toJSONString(jsonData) ; - }catch(Exception e){ - e.printStackTrace(); - LOG.error("parse data NumberFormat err :"+jsonData); - } - return JsonUtils.toJSONString(jsonData) ; - } - - - - - - - - - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParralleData.java b/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParralleData.java deleted file mode 100644 index 3321623..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/ParralleData.java +++ /dev/null @@ -1,563 +0,0 @@ -package com.bfd.mf.service.extendType; - -import com.bfd.mf.entity.TypeEntity; -import com.bfd.mf.entity.mysql.MfDoctypeInfo; -import com.bfd.mf.service.tools.*; -import net.sf.json.JSONObject; -import org.apache.commons.lang3.StringUtils; -import org.apache.log4j.Logger; - -import java.util.*; -import java.util.Map.Entry; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import java.util.regex.PatternSyntaxException; - -public class ParralleData { - - private static final Logger LOG = Logger.getLogger(ParralleData.class); - - private List chunkTextList = new ArrayList(); - - private Map chunkIdPatternId = new HashMap(); - - private Map chunkData = new HashMap(); - - public int getChunkId(String chunkText ,int patternId, int parentChunkId) { - int id = 0; - String vText = ""; - if(parentChunkId==-1){ - vText = patternId+""; - } else{ - vText = patternId+"_"+chunkText; - } - if(chunkTextList.contains(vText)) { - id = chunkTextList.indexOf(vText); - } else { - chunkTextList.add(vText); - id = chunkTextList.size()-1; - this.chunkData.put(id, new ChunkData(id)); - } - chunkIdPatternId.put(id, parentChunkId); - return id; - } - - - public void addData(int chunkId, String dataName, List value) { - this.chunkData.get(chunkId).addData(dataName, value); - } - - public void addData(int chunkId, String dataName, String value, String type, String projectName, String cid) { - // WriteMethod.writeMethod("10b.txt",chunkId + " === " + dataName + " === " + value + " === " + cid); - try { - String doctype=""; - if(cid.contains(":baidu")||cid.contains(":google")){ - doctype ="search"; - List valueList = new ArrayList(); - valueList.add("搜索引擎"); - this.addData(chunkId, "channel", valueList); - List doctypevalueList = new ArrayList(); - doctypevalueList.add("search"); - this.addData(chunkId, "docType", doctypevalueList); - cid=cid.split(":")[0]; - - }else{ - doctype = MfDoctypeInfo.docTypeInfos.get(cid);} - if(dataName.equals("crawlTime")){ - List valueList = new ArrayList(); - valueList.add(DataCheckUtil.convertStringTotime(value)); - this.addData(chunkId, "crawlTimeStr", valueList); - - List valueList2 = new ArrayList(); - long daylong = DataCheckUtil.convertStringToLong(value); - valueList2.add(daylong+""); - this.addData(chunkId, dataName, valueList2); - - List dayList = new ArrayList(); - dayList.add(DataCheckUtil.getDay(daylong)+""); - this.addData(chunkId, "crawlDay", dayList); - - List dateList = new ArrayList(); - dateList.add(DataCheckUtil.getDate(daylong)+""); - this.addData(chunkId, "crawlDate", dateList); - - } else if(dataName.equals("pubTimeStr")){ - List valueList = new ArrayList(); - List valueList2 = new ArrayList(); - if(value.contains("-")){ - value = DataCheckUtil.chechData2(value); - valueList.add(DateUtil.getTimeMillis(value)+""); - valueList2.add(value); - }else if(value.contains("1")){ - if(value.length() == 10){ - value = Long.valueOf(value) * 1000 +""; - }else{ - value = Long.valueOf(value) +""; - } - valueList.add(value); - valueList2.add(DateUtil.getDateTime(Long.valueOf(value))); - } - else if(value.equals("0")&&type.equals("socialFollow")){ - if(value.length() == 10){ - value = Long.valueOf(value) * 1000 +""; - }else{ - value = Long.valueOf(value) +""; - } - valueList.add(value); - valueList2.add(DateUtil.getDateTime(Long.valueOf(value))); - } - else if(StringUtils.isBlank(value)){ - value=DateUtil.getbeforeHour();//当前时间减去1小时 - valueList.add(DateUtil.getbeforonecurr()+""); - valueList2.add(value); - } - this.addData(chunkId, "pubTime", valueList); - this.addData(chunkId, dataName, valueList2); - - long pubTime = Long.valueOf(valueList.get(0)); - List pubDayList = new ArrayList(); - pubDayList.add(DataCheckUtil.getDay(pubTime)+""); - this.addData(chunkId, "pubDay", pubDayList); - - List pubDateList = new ArrayList(); - pubDateList.add(DataCheckUtil.getDate(pubTime)+""); - this.addData(chunkId, "pubDate", pubDateList); - - } else if(dataName.equals("pageCommentCount") || dataName.equals("commentsCount")){ // 页面显示评论数和评论数 - List valueList = new ArrayList(); - valueList.add(value); - this.addData(chunkId, "commentsCount", valueList); - this.addData(chunkId, "pageCommentCount", valueList); - } else if(dataName.equals("pageTranspondCount") || dataName.equals("quoteCount")){ // 页面显示转发数和转发数 - List valueList = new ArrayList(); - if(value.endsWith("万+")){ - value = value.substring(0,value.indexOf("万+")) + "0000" ; - } - valueList.add(value); - this.addData(chunkId, "quoteCount", valueList); - this.addData(chunkId, "pageTranspondCount", valueList); - } else if(dataName.equals("listBrand")){ - List valueList = new ArrayList(); - if(type.equals("eccomment")){// 如果是电商评论的 listBrand 需要拆分一下 - if(value != "" && value.contains("@#@")){ - String brandList = ""; - String firstListBrand = "" ; - String secondListBrand = "" ; - String threeListBrand = "" ; - String plate = ""; - brandList = value.substring(0,value.lastIndexOf("@#@")); - plate = value.substring(value.lastIndexOf("@#@")+3); - String[] listbrands = brandList.split("@#@"); - if(listbrands.length == 1){ - firstListBrand = listbrands[0]; - }else if(listbrands.length == 2){ - firstListBrand = listbrands[0]; - secondListBrand = listbrands[1]; - }else if(listbrands.length == 3){ - firstListBrand = listbrands[0]; - secondListBrand = listbrands[1]; - threeListBrand = listbrands[2]; - } - List brandLists = new ArrayList(); - List firstListBrandList = new ArrayList(); - List secondListBrandList = new ArrayList(); - List threeListBrandList = new ArrayList(); - List plateList = new ArrayList(); - brandLists.add(brandList); - firstListBrandList.add(firstListBrand); - secondListBrandList.add(secondListBrand); - threeListBrandList.add(threeListBrand); - plateList.add(plate); - this.addData(chunkId, "brand", plateList); - this.addData(chunkId, "plate", plateList); - this.addData(chunkId, "brandList", brandLists); - this.addData(chunkId, "firstListBrand", firstListBrandList); - this.addData(chunkId, "secondListBrand", secondListBrandList); - this.addData(chunkId, "threeListBrand", threeListBrandList); - } - }else if(type.startsWith("news")){ - List plateList = new ArrayList(); - plateList.add(value); - this.addData(chunkId, "plate", plateList); - } - valueList.add(value); - this.addData(chunkId, dataName, valueList); - } else if(dataName.equals("url")){ - List urlHashList = new ArrayList() ; - urlHashList.add(MfMD5Util.GetMD5Code(value)); - this.addData(chunkId, "urlHash", urlHashList); - - List urlList = new ArrayList(); - urlList.add(value); - this.addData(chunkId, dataName, urlList); - - } else if (dataName.equals("avatar")){ - List avatarList = new ArrayList() ; - if(value.contains("http:https:")){ - value = value.replace("http:https:","https:"); - } - avatarList.add(value); - this.addData(chunkId, dataName, avatarList); - }else if(dataName.equals("pictureList")){ - List pictureList = new ArrayList() ; - pictureList.add(value); - this.addData(chunkId, dataName, pictureList); - } else if(dataName.equals("title")){ - List TitleList = new ArrayList() ; - TitleList.add(value); - this.addData(chunkId, dataName, TitleList); - - List TitleHashList = new ArrayList() ; - TitleHashList.add(MfMD5Util.GetMD5Code(value)); - this.addData(chunkId, "titleSimHash", TitleHashList); - - List TitleLength = new ArrayList() ; - TitleLength.add(String.valueOf(value.length())); - this.addData(chunkId, "titleLength", TitleLength); - } else if(dataName.equals("content")){ - List contentList = new ArrayList() ; - contentList.add(value); - this.addData(chunkId, dataName, contentList); - - List ContentLength = new ArrayList() ; - ContentLength.add(String.valueOf(value.length())); - this.addData(chunkId, "contentLength", ContentLength); - - List contentTitleHashList = new ArrayList() ; - contentTitleHashList.add(MfMD5Util.GetMD5Code(value)); - this.addData(chunkId, "contentSimHash", contentTitleHashList); - } else if(dataName.equals("commentScore")){ // 电商的评论评分 - List commentScoreList = new ArrayList() ; - int newValue = 0 ; - if(StringUtils.isNotBlank(value)){ - try{ - if(value.endsWith("分")){ - value = value.substring(0, value.length()-1); - newValue = (int) (Math.ceil(Double.valueOf(value)/2)) ; - }else{ - if(value.matches("\\d+\\.\\d+")){ - value = value.substring(0, value.indexOf(".")); - } - newValue = Integer.valueOf(value) ; - } - }catch(Exception e){ - e.printStackTrace(); - LOG.error("ParralleData <<<< addData commentScore convert error value:"+value); - } - } - commentScoreList.add(newValue+""); - this.addData(chunkId, dataName, commentScoreList); - - } else if(dataName.equals("keyword")){ - List keywordList = new ArrayList() ; - keywordList.add(value) ; - if(type.startsWith("bbs")){ - this.addData(chunkId, "plate", keywordList); - this.addData(chunkId, "listBrand", keywordList); - } - this.addData(chunkId, dataName, keywordList); - } else if(dataName.equals("usertype")) { - List usertypeList = new ArrayList(); - usertypeList.add(value); - this.addData(chunkId, dataName, usertypeList); - }else if (dataName.equals("postId")){ - List postIdList = new ArrayList<>(); - postIdList.add(value); - this.addData(chunkId, "postId", postIdList); - if (type.equals("userInfoPage")){ - this.addData(chunkId, "authorId", postIdList); - } -// else if(type.equals("socialFollow")){ -// this.addData(chunkId, "authorId", postIdList); -// } - String docId = cid+"#"+value; - List docIdList = new ArrayList() ; - docIdList.add("bfd_"+doctype+"_"+MfMD5Util.GetMD5Code(docId)); - this.addData(chunkId,"docId",docIdList); - List dataiIdList = new ArrayList<>(); - dataiIdList.add(MfMD5Util.GetMD5Code(docId)); - this.addData(chunkId,"_id_",dataiIdList); - List dataIdList = new ArrayList<>(); - dataIdList.add(MfMD5Util.GetMD5Code("bfd_"+doctype+"_"+MfMD5Util.GetMD5Code(docId))); - this.addData(chunkId,"dataId",dataIdList); - - } else if(dataName.equals("attitudesCount")){ - List attitudesCountList ; -// if(type.equals(TypeEntity.STORYDETAILPAGE)){ -// if(StringUtils.isNotBlank(value)){ -// JSONObject dataMap = JSONObject.fromObject(value); -// if(dataMap.containsKey("totalCount")){ -// attitudesCountList = new ArrayList(); -// String totalCount = dataMap.get("totalCount").toString(); -// attitudesCountList.add(totalCount); -// this.addData(chunkId, dataName,attitudesCountList); -// } -// if(dataMap.containsKey("likeCount")){ -// attitudesCountList = new ArrayList(); -// String likeCount = dataMap.get("likeCount").toString(); -// attitudesCountList.add(likeCount); -// this.addData(chunkId, "firstListBrand",attitudesCountList); -// } -// if(dataMap.containsKey("loveCount")){ -// attitudesCountList = new ArrayList(); -// String loveCount = dataMap.get("loveCount").toString(); -// attitudesCountList.add(loveCount); -// this.addData(chunkId, "secondListBrand",attitudesCountList); -// } -// if(dataMap.containsKey("hahaCount")){ -// attitudesCountList = new ArrayList(); -// String hahaCount = dataMap.get("hahaCount").toString(); -// attitudesCountList.add(hahaCount); -// this.addData(chunkId, "threeListBrand",attitudesCountList); -// } -// if(dataMap.containsKey("angryCount")){ -// attitudesCountList = new ArrayList(); -// String angryCount = dataMap.get("angryCount").toString(); -// attitudesCountList.add(angryCount); -// this.addData(chunkId, "fourListBrand",attitudesCountList); -// } -// if(dataMap.containsKey("wowCount")){ -// attitudesCountList = new ArrayList(); -// String wowCount = dataMap.get("wowCount").toString(); -// attitudesCountList.add(wowCount); -// this.addData(chunkId, "fiveListBrand",attitudesCountList); -// } -// if(dataMap.containsKey("sadCount")){ -// attitudesCountList = new ArrayList(); -// String sadCount = dataMap.get("sadCount").toString(); -// attitudesCountList.add(sadCount); -// this.addData(chunkId, "listBrand",attitudesCountList); -// } -// } -// attitudesCountList = new ArrayList(); -// attitudesCountList.add(value) ; -// this.addData(chunkId, dataName,attitudesCountList); -// } -// else{ - attitudesCountList = new ArrayList(); - attitudesCountList.add(value) ; - this.addData(chunkId, dataName,attitudesCountList); - - } else if(dataName.equals("projectName")){ - List projectNameList = new ArrayList() ; - if(type.startsWith("bbs")){ - if(value.contains("|")){ - projectNameList.add(value.split("|")[1]) ; - }else{ - projectNameList.add(projectName) ; - } - }else{ - if(StringUtils.isNotBlank(value)){ - projectNameList.add(value) ; - }else{ - projectNameList.add(projectName) ; - } - } - this.addData(chunkId, dataName,projectNameList); - } else if(dataName.equals("source")){ - List valueList = new ArrayList(); - valueList.add(value); - this.addData(chunkId, dataName, valueList); - } - else if(dataName.equals("crawlDataFlag")){ - if(value.contains(":")){ - String crawlDataFlagtype=value.split(":")[0]; - if(crawlDataFlagtype.equals("url")){ - List crawlDataFlagTypeList = new ArrayList<>(); - crawlDataFlagTypeList.add("2"); - this.addData(chunkId, "crawlDataFlagType", crawlDataFlagTypeList); - } - else if (crawlDataFlagtype.contains("account")){ - List crawlDataFlagTypeList = new ArrayList<>(); - crawlDataFlagTypeList.add("1"); - this.addData(chunkId, "crawlDataFlagType", crawlDataFlagTypeList); - }else if (crawlDataFlagtype.contains("keyword")){ - List crawlDataFlagTypeList = new ArrayList<>(); - crawlDataFlagTypeList.add("0"); - this.addData(chunkId, "crawlDataFlagType", crawlDataFlagTypeList); - } - } - List valueList = new ArrayList(); - valueList.add(value); - this.addData(chunkId, "crawlDataFlag", valueList); - } - // else if(dataName.equals("channel")){ - // System.out.println("channel是个是是是是是是"+dataName.equals("channel")); - // } - - // else if (dataName.equals("filePath")){ - // List valueList = new ArrayList(); - // List valueList2 = new ArrayList(); - // if (!value.toString().equals("[]")){ - // valueList2.add("1"); - // this.addData(chunkId, "ugc", valueList2); - // } - // // this.addData(chunkId, dataName, valueList); - // }else if (dataName.equals("imagePath")){ - // List valueList = new ArrayList(); - // List valueList2 = new ArrayList(); - // if (!value.toString().equals("[]")){ - // valueList2.add("1"); - // this.addData(chunkId, "pgc", valueList2); - // } - // //this.addData(chunkId, dataName, valueList); - // }else if (dataName.equals("videoPath")){ - // List valueList = new ArrayList(); - // List valueList2 = new ArrayList(); - // if (!value.toString().equals("[]")){ - // valueList2.add("1"); - // this.addData(chunkId, "egc", valueList2); - // } - // //this.addData(chunkId, dataName, valueList); - // } - - else{ - List valueList = new ArrayList(); - valueList.add(value); - this.addData(chunkId, dataName, valueList); - } - } catch (NumberFormatException e) { - e.printStackTrace(); - LOG.error("value============"+value+"dataName"+dataName); - } - } - - private String upperCase(String str) { - char[] ch = str.toCharArray(); - if (ch[0] >= 'a' && ch[0] <= 'z') { - ch[0] = (char) (ch[0] - 32); - } - return new String(ch); - } - - private String StringFilter(String str) throws PatternSyntaxException { - String regEx = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"; - Pattern p = Pattern.compile(regEx); - Matcher m = p.matcher(str); - return m.replaceAll("").trim(); - } - - private List getChildChunkData( int parentChunkId ) { - List chunkDataList = new ArrayList(); - for (Entry e : this.chunkIdPatternId.entrySet() ) { - if( e.getValue() == parentChunkId ) { - chunkDataList.add( this.chunkData.get(e.getKey()) ); - } - } - return chunkDataList; - } - - public List> getParralleData() { - List> reData = new ArrayList>(); - if(this.chunkData.containsKey(0)) { - List vdList = this.chunkData.get(0).getParralleData(); - int vdListSize = vdList.size(); - if( vdListSize > 0 ) { - for ( ValueData vd : vdList ) { - String dataName = vd.getDataName(); - List values = vd.getValue(); - for( int i =0; i()); - reData.get(i).put( dataName, values.get(i) ); - } - } - } - } - return reData; - } - - class ChunkData{ - - private Map chunkData = new HashMap(); - - private Set dataNameSet = new TreeSet(); - - private Map dataNameValueSize = new HashMap(); - - private int maxSize = 0; - - private int chunkId; - - ChunkData(int chunkId) { - this.chunkId = chunkId; - } - - public void addData(String dataName, List value) { - if ( !dataNameSet.add(dataName) ) { - chunkData.get(dataName).addValue(value); - } else { - ValueData vd = new ValueData(dataName); - vd.addValue(value); - chunkData.put(dataName, vd); - } - int size = chunkData.get(dataName).size(); - maxSize = size > maxSize ? size : maxSize; - dataNameValueSize.put(dataName, size); - } - - - List getParralleData() { - List valueDataList = new ArrayList(); - this.getChildValue(); - for( Entry e : chunkData.entrySet() ) { - if(e.getValue().size() < this.maxSize) { - e.getValue().lastFill(maxSize); - } - - valueDataList.add(e.getValue()); - } - return valueDataList; - } - - private void getChildValue() { - List childChunkDataList = getChildChunkData( this.chunkId ); - for( ChunkData cd : childChunkDataList ) { - List vdList = cd.getParralleData(); - for( ValueData vd : vdList ) { - this.addData( vd.getDataName(), vd.getValue() ); - } - } - } - - } - - class ValueData{ - - private String dataName; - - private List value = new ArrayList(); - - public ValueData(String dataName){ - this.dataName = dataName; - } - - public String getDataName() { - return this.dataName; - } - - public void addValue(List value) { - this.value.addAll(new ArrayList(value)); - } - - public void lastFill( int size ) { - if(this.value.size()>0) { - String lastValue = this.value.get(this.value.size()-1); - for ( int i=this.value.size(); i getValue() { - return this.value; - } - - public int size() { - return this.value.size(); - } - - } - -} - - diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/SentimentCache.java b/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/SentimentCache.java deleted file mode 100644 index fdc7910..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/extendType/SentimentCache.java +++ /dev/null @@ -1,101 +0,0 @@ -//package com.bfd.mf.service.extendType; -// -//import java.util.HashMap; -//import java.util.Map; -//import java.util.Vector; -//import com.bfd.crawler.kafka7.KfkProducer; -//import com.bfd.mf.service.utils.SentimentApiUtils; -// -//public class SentimentCache { -// -// public static Map sentimentCacheMap = new HashMap(); -// -// private Vector cacheData = new Vector(); -// -// private int maxCacheSem = 300 ; -// -// private SentimentApiUtils sentimentApiUtils ; -// -// private int callSen ; -// -// private KfkProducer kfkProducer ; -// -// private String kafkaName ; -// -// private long lastWriteTime = System.currentTimeMillis(); -// -// private static long maxOutWriteTime = 2 * 60 * 1000 ; -// -// private int currentCacheNum = 0; -// -// private String kafkaSuffixName ; -// -// private SentimentCache(int kafkaServeName,String kafkaName, int callSen,String kafkaSuffixName){ -// this.kafkaSuffixName = kafkaSuffixName ; -// this.callSen = callSen ; -// this.kafkaName = kafkaName ; -// this.kfkProducer = KfkProducer.getInstance(kafkaServeName, kafkaName) ; -// if(callSen == 1){ -// this.sentimentApiUtils = new SentimentApiUtils(); -// } -// new Thread(new CheckWirteTimeOut()).start(); -// } -// -// public static SentimentCache getSentimentCache(int kafkaServerName, String type, int callSen,String kafkaSuffixName, int esSerName){ -// if(sentimentCacheMap.containsKey(esSerName+"#"+kafkaServerName+"#"+type)){ -// return sentimentCacheMap.get(esSerName+"#"+kafkaServerName+"#"+type) ; -// }else{ -// SentimentCache elkInsertDataCache = new SentimentCache(kafkaServerName ,type, callSen, kafkaSuffixName); -// sentimentCacheMap.put(esSerName+"#"+kafkaServerName+"#"+type, elkInsertDataCache); -// return elkInsertDataCache ; -// } -// } -// -// public void addCache(String dataMap){ -// try { -// synchronized (cacheData) { -// this.currentCacheNum ++ ; -// cacheData.add(dataMap); -// if(currentCacheNum >= maxCacheSem){ -// this.exeSentiment(); -// } -// } -// }catch(Exception e){ -// e.printStackTrace(); -// } -// } -// -// private void exeSentiment(){ -// synchronized (cacheData) { -// if(callSen == 1){ -// Vector newDatas = this.sentimentApiUtils.getSentimentValue(cacheData); -// if(newDatas.size() > 0){ -// kfkProducer.send(kafkaName + "_"+kafkaSuffixName, newDatas) ; -// } -// }else{ -// if(cacheData.size() > 0){ -// kfkProducer.send(kafkaName + "_"+kafkaSuffixName, cacheData) ; -// } -// } -// cacheData = new Vector(); -// } -// this.currentCacheNum = 0; -// this.lastWriteTime = System.currentTimeMillis(); -// } -// -// class CheckWirteTimeOut implements Runnable { -// @Override -// public void run() { -// while (true) { -// try { -// if (System.currentTimeMillis() - lastWriteTime > maxOutWriteTime) { -// exeSentiment(); -// } -// Thread.sleep(1000 * 1 * 60); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } -// } -// } -//} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/IKafka.java b/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/IKafka.java deleted file mode 100644 index 4545573..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/IKafka.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.bfd.mf.service.kafka; - -import java.util.List; - -public interface IKafka { - public void read(); -// public void read(String readTopicName); -// public void read(String readTopicName, String groupId); - public void write(int kafakSerName, List data, String writeTopicName); - public void stop(); -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/ReadKafka.java b/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/ReadKafka.java deleted file mode 100644 index 8dbdfc7..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/kafka/ReadKafka.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.bfd.mf.service.kafka; - -import com.bfd.crawler.kafka7.KfkConsumer; -import com.bfd.crawler.kafka7.KfkProducer; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import java.util.List; -import java.util.concurrent.BlockingQueue; - -public class ReadKafka implements IKafka{ - private static Log LOG = LogFactory.getLog(ReadKafka.class); - private BlockingQueue queue; - private String defaultReadTopicName; - private int threadNums; - private String groupId; - private int kafkaServerName ; - private int esSerName ; - - public ReadKafka(BlockingQueue queue,String topicName,int threadNums,String groupId,int kafkaServerName, int esSerName){ - this.queue = queue; - this.defaultReadTopicName = topicName; - this.threadNums =threadNums; - this.groupId = groupId; - this.kafkaServerName = kafkaServerName ; - this.esSerName = esSerName ; - } - - public void read(){ - KfkConsumer.startReadThread(this.queue, this.defaultReadTopicName,this.threadNums,this.groupId,this.kafkaServerName); - // System.out.println("++++++++++++++++"+this.queue.size()+"==========================="+this.defaultReadTopicName+"="+this.kafkaServerName+"="+this.groupId); - } - -// @Override -// public void read(String readTopicName) { -// System.out.println("++++++++++++++++"+readTopicName+"==========================="); -// KfkConsumer.startReadThread(this.queue, readTopicName,this.threadNums,this.groupId,this.kafkaServerName); -// -// } -// -// @Override -// public void read(String readTopicName, String groupId) { -// KfkConsumer.startReadThread(this.queue, readTopicName,this.threadNums,groupId,this.kafkaServerName); -// } - - @Override - public void write(int kafakSerName, List data,String writeTopicName) { - KfkProducer.getInstance(kafakSerName,"").send(writeTopicName,data); - } - - - @Override - public void stop() { - LOG.info("ending:kfk consumer:stopping..."); - KfkConsumer.stopKfkConsumerThreads(); - LOG.info("ending:kfk consumer:closed"); - } - - /** - * for test - * */ -// public static void main(String[] args) { -// test2(); -// } - -// public static void test2(){ -// BlockingQueue queue = new LinkedBlockingDeque(); -// String topicName = "hrygwbcon1"; -// int threadNums = 5; -// ReadKafka kfk = new ReadKafka(queue, topicName, threadNums,"bbs_group_test",1,1); -// kfk.read(); -// while(true){ -// if(queue.size()>0){ -// try { -// System.out.println(queue.take()); -// } catch (InterruptedException e) { -// e.printStackTrace(); -// } -// }else{ -//// kfk.stop(); -//// break; -// } -// } -// -// } - -// public static void test1(){ -// -// -// -// BlockingQueue queue = new LinkedBlockingDeque(); -// String topicName = "test_hrn"; -// int threadNums = 5; -// ReadKafka kfk = new ReadKafka(queue, topicName, threadNums,"test_group_2",1,1); -//// List data = new ArrayList(); -//// for(int i=1000;i<1010;i++){ -//// data.add("test_" + i); -//// } -//// kfk.write(data); -// -// -// kfk.read(); -// while(true){ -// if(queue.size()>0){ -// try { -// System.out.println(queue.take()); -// } catch (InterruptedException e) { -// e.printStackTrace(); -// } -// }else{ -//// kfk.stop(); -//// break; -// } -// } -// -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenKafkaManager.java b/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenKafkaManager.java deleted file mode 100644 index 05d5cd3..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenKafkaManager.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.bfd.mf.service.listen; - - -import com.bfd.crawler.kafka7.KfkConsumer; -import com.bfd.crawler.kafka7.KfkProducer; -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.entity.mysql.FiledTableInfo; -import com.bfd.mf.service.extendType.ForegroundExtendType; -import com.bfd.mf.service.kafka.ReadKafka; -import com.bfd.mf.service.tools.DateUtil; - -import java.util.Map; -import java.util.concurrent.*; - - -public class ListenKafkaManager implements Runnable{ - - private LinkedBlockingDeque queue= new LinkedBlockingDeque(10000); - - private boolean isRun = true; - - private FieldNormaliz fieldNormaliz; - - private ThreadPoolExecutor spiderPoolExec ; - private Map> tableInfoMap; - - - private int addNum = 0 ; - - private KfkProducer kfkProducer ; - - public ListenKafkaManager(FieldNormaliz fieldNormaliz){ - String kafkaname = fieldNormaliz.getKafkaName() ; - int croePoolsize = 20 ; - int maximumPoolsize = 100; - long keepAliveTime = 0; - this.spiderPoolExec = new ThreadPoolExecutor(croePoolsize, maximumPoolsize, keepAliveTime, TimeUnit.SECONDS, new SynchronousQueue()); - this.fieldNormaliz = fieldNormaliz ; - this.tableInfoMap = FiledTableInfo.tableInfoMap; - //this.kfkProducer = KfkProducer.getInstance(fieldNormaliz.getKafkaSerName(),kafkaname+"_err"); - ReadKafka readKafka = new ReadKafka(queue, kafkaname,12, fieldNormaliz.getGroupId(), fieldNormaliz.getKafkaSerName(),fieldNormaliz.getEsSerName()); - readKafka.read(); - - } - - @Override - public void run() { - while(isRun){ - if(this.queue.size() < 1){ - DateUtil.sleep(1); - continue; - } - String data = this.queue.poll(); - if(data == null) continue ; - if (data.equals("__Exit__")) break ; - this.addTask(data); - addNum++; - } - } - - public int getReadKafkaNum(){ - - return addNum ; - } - - private void addTask(String data){ - while(this.spiderPoolExec.getPoolSize() >= this.spiderPoolExec.getMaximumPoolSize() || this.spiderPoolExec.getActiveCount() >= this.spiderPoolExec.getMaximumPoolSize()) { - try { - System.out.println("+=+=+=+=+=+=+=+=+=+=++++++"+this.queue.size()); - System.out.println("线程满了啊"+spiderPoolExec.getPoolSize()+"最大线程数"+spiderPoolExec.getMaximumPoolSize()+"现有的线程数"+spiderPoolExec.getActiveCount()); - Thread.sleep(2000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - try { - this.spiderPoolExec.submit(new ForegroundExtendType(data, fieldNormaliz, kfkProducer,tableInfoMap)); - } catch (Exception e) { - e.printStackTrace(); - } -// try { -// Future future=this.spiderPoolExec.submit(new ForegroundExtendType(data, fieldNormaliz, kfkProducer)); -// future.get(); -// } catch (Exception e) { -// System.out.println("线程异常了"); -// e.printStackTrace(); -// } - } - - public void setSwitch(boolean flag){ - this.isRun = flag ; - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenTaskManager.java b/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenTaskManager.java deleted file mode 100644 index 975cd25..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/listen/ListenTaskManager.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.bfd.mf.service.listen; - -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.entity.mysql.MfFieldInfo; -import com.bfd.mf.entity.mysql.MfFieldType; -import com.bfd.mf.service.tools.JsonUtils; -import org.apache.log4j.Logger; - -import java.util.HashMap; -import java.util.Map; -import java.util.Set; -import java.util.TreeSet; - -public class ListenTaskManager { - - private static final Logger LOG = Logger.getLogger(ListenTaskManager.class); - - private static Set listenkafkaTopicThreadObj = new TreeSet(); - - public static Map listenKafkaManagers = new HashMap(); - - public static void addKafkaTopicListen(FieldNormaliz fieldNormaliz){ - String kafkaTopicName = fieldNormaliz.getKafkaName() ; - int kafkaServerName = fieldNormaliz.getKafkaSerName() ; - int esSerName = fieldNormaliz.getEsSerName(); - LOG.info("[ListenTaskManager] addKafkaTopicListen >>> kafkaTopicName :"+kafkaTopicName); - if (!listenkafkaTopicThreadObj.contains(esSerName+"#"+kafkaServerName+"#"+kafkaTopicName)) { - listenkafkaTopicThreadObj.add(esSerName+"#"+kafkaServerName+"#"+kafkaTopicName); - fieldNormaliz.setFieldDataMap(MfFieldInfo.fieldNormalizeInfoMap); - fieldNormaliz.setFieldInfo(MfFieldType.fieldStringTypes); - //System.out.println("@@@@@@@@@@ " + JsonUtils.toJSONString(fieldNormaliz)); - ListenKafkaManager listenKafkaManager = null; - try { - listenKafkaManager = new ListenKafkaManager(fieldNormaliz); - new Thread(listenKafkaManager).start(); - } catch (Exception e) { - System.out.println("线程异常了啊啊啊啊啊啊啊啊啊啊啊啊"); - e.printStackTrace(); - } - listenKafkaManagers.put(kafkaTopicName, listenKafkaManager); - }else{ - LOG.debug("[ListenTaskManager] addKafkaTopicListen >>> kafkaTopicName :"+kafkaTopicName +" 任务已经存在"); - } - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java b/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java deleted file mode 100644 index 95cd84f..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.bfd.mf.service.rmi; - - -import com.bfd.mf.entity.FieldNormaliz; - -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.util.Map; - -public interface ServiceManager extends Remote{ - - public void addTaskName(FieldNormaliz fieldNormaliz) throws RemoteException; - - public void stopImprotTask(int kafkaSerName, String kafkaName) throws RemoteException ; - - public void startImprotTask(String kafkaName) throws RemoteException ; - - public String getNowImportEsNum(String indexSuffixName, String docType) throws RemoteException; - - public int getNowKafkaNum(Map paramMap) throws RemoteException ; -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.java b/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.java deleted file mode 100644 index af511c0..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.bfd.mf.service.rmi.impl; - -import com.bfd.crawler.kafka7.KfkConsumer; -import com.bfd.crawler.utils.JsonUtils; -import com.bfd.mf.entity.FieldNormaliz; -import com.bfd.mf.service.listen.ListenKafkaManager; -import com.bfd.mf.service.listen.ListenTaskManager; -import com.bfd.mf.service.rmi.ServiceManager; -import org.apache.log4j.Logger; - -import java.rmi.RemoteException; -import java.rmi.server.UnicastRemoteObject; -import java.util.Map; - -public class ServiceManagerImpl extends UnicastRemoteObject implements ServiceManager { - private static final Logger LOG = Logger.getLogger(ServiceManagerImpl.class); - private static final long serialVersionUID = 3861777587327339448L; - public ServiceManagerImpl() throws RemoteException { - super(); - } - - /** - * 添加一个灌数任务 - */ - @Override - public void addTaskName(FieldNormaliz fieldNormaliz) throws RemoteException { - LOG.info("[TaskManagerImpl] addTaskName param : " + JsonUtils.toJSONString(fieldNormaliz)); - ListenTaskManager.addKafkaTopicListen(fieldNormaliz); - } - - @Override - public void stopImprotTask(int kafkaSerName,String kafkaName) throws RemoteException{ - LOG.info("[TaskManagerImpl] stopImprotTask param : " + kafkaName); - if(ListenTaskManager.listenKafkaManagers.size() > 0){ - KfkConsumer.stopKfkConsumerThreads(kafkaSerName,kafkaName); - ListenKafkaManager listenKafkaManager = ListenTaskManager.listenKafkaManagers.get(kafkaName) ; - listenKafkaManager.setSwitch(false); - ListenTaskManager.listenKafkaManagers.remove(kafkaName); - } - - } - - @Override - public void startImprotTask(String kafkaName) throws RemoteException{ - LOG.info("[TaskManagerImpl] startImprotTask param : " + kafkaName); - if(ListenTaskManager.listenKafkaManagers.size() > 0){ - ListenKafkaManager listenKafkaManager = ListenTaskManager.listenKafkaManagers.get(kafkaName) ; - listenKafkaManager.setSwitch(true); - } - } - - @Override - public String getNowImportEsNum(String indexSuffixName, String docType) throws RemoteException{ - return "0"; - } - - - -// /*@Override -// public String getNowKafkaNum(Map paramMap) throws RemoteException{ -// JSONArray jsonarry = null; -// if(RunStart.kafkaInfoMap.size() > 0){ -// List jsondata = new ArrayList(); -// Map newKafkaValue ; -// for(Map.Entry> entry : RunStart.kafkaInfoMap.entrySet()){ -// Map kafkaValues = entry.getValue(); -// newKafkaValue = new HashMap(kafkaValues); -// String kafkaName = kafkaValues.get("kafkaName").toString(); -// int kafkaServeName = Integer.valueOf(kafkaValues.get("kafkaServeName").toString()); -// int taskid = Integer.valueOf(kafkaValues.get("taskid").toString()); -// int busniessType = Integer.valueOf(kafkaValues.get("busniessType").toString()); -// int readNum = 0 ; -// if(ListenTaskManager.listenKafkaManagers.size() > 0){ -// ListenKafkaManager listenKafkaManager = ListenTaskManager.listenKafkaManagers.get(kafkaName) ; -// readNum = listenKafkaManager.getReadKafkaNum() ; -// } -// newKafkaValue.put("readKafkaNum", readNum); -// JSONObject object = JSONObject.fromObject(newKafkaValue); -// jsondata.add(object.toString()) ; -// } -// jsonarry = JSONArray.fromObject(jsondata); -// } -// return jsonarry.toString() ; -// }*/ - - /** - * 获取 kafka 当前条数 - * 启动一个任务最先调用的就是这个方法 - * @param paramMap - * @return - * @throws RemoteException - */ - @Override - public int getNowKafkaNum(Map paramMap) throws RemoteException{ - LOG.info("[TaskManagerImpl] getNowKafkaNum param : " + JsonUtils.toJSONString(paramMap)); - String kafkaName = paramMap.get("kafkaName").toString() ; - int readNum = 0 ; - if(ListenTaskManager.listenKafkaManagers.size() > 0){ - ListenKafkaManager listenKafkaManager = ListenTaskManager.listenKafkaManagers.get(kafkaName) ; - readNum = listenKafkaManager.getReadKafkaNum() ; - } - LOG.info("[TaskManagerImpl] getNowKafkaNum readNum : " + readNum); - return readNum ; - } - -// public static void main(String[] args) { -// List jsondata = new ArrayList(); -// Map newKafkaValue = new HashMap(); -// newKafkaValue.put("name", "zs"); -// newKafkaValue.put("age", 1); -// JSONObject object = JSONObject.fromObject(newKafkaValue); -// jsondata.add(object.toString()); -// System.out.println(JSONArray.fromObject(jsondata).toString()); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/AreaCategoryMappingUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/AreaCategoryMappingUtils.java deleted file mode 100644 index dc66499..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/AreaCategoryMappingUtils.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.bfd.mf.service.tools; - - -import com.bfd.mf.entity.AreaCategoryEntity; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -public class AreaCategoryMappingUtils { - - public static Set set = new HashSet<>(); - - public static List DIRECT_CITY = new ArrayList<>(); - - public AreaCategoryMappingUtils(){ - try { - DIRECT_CITY.add("北京"); - DIRECT_CITY.add("天津"); - DIRECT_CITY.add("上海"); - DIRECT_CITY.add("重庆"); -// codisUtils = new CodisUtils(); -// set = new HashSet<>(JSON.parseArray(codisUtils.get("dict"), AreaCategoryEntity.class)); - }catch(Exception e){ - e.printStackTrace(); - } - } -// public static void main(String[] args) { -// AreaCategoryMappingUtils areaCategoryMappingUtils = new AreaCategoryMappingUtils(); -// System.out.println(JsonUtils.toJSONString(set)); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/BfdJodis.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/BfdJodis.java deleted file mode 100644 index 2fedf77..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/BfdJodis.java +++ /dev/null @@ -1,1287 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

    - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

    - * http://www.apache.org/licenses/LICENSE-2.0 - *

    - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.service.tools; - -import com.bfd.nlp.common.util.object.TObjectUtils; -import com.wandoulabs.jodis.JedisResourcePool; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import redis.clients.jedis.Jedis; -import redis.clients.jedis.JedisPoolConfig; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * @author: EricLiutyy (Zheng Liu) - * @date: 16/8/13 13:46 - * @description: BFD Codis client for business ID based codis cluster - *

    - *  1) Add Exception Processing logic
    - *  2) Add binary object support
    - *  3) Add necessary log
    - *
    - *  TODO: Code Restructure
    - *
    - *  
    - */ - -public class BfdJodis { - - private static Logger logger = LoggerFactory.getLogger(BfdJodis.class); - - private JedisResourcePool jedisPool = null; - private String businessID = ""; - - /** - * @param zkAddr ZooKeeper connect string. e.g., "zk1:2181" - * @param zkSessionTimeoutMs ZooKeeper session timeout in ms - * @param zkPath the codis proxy dir on ZooKeeper. e.g., "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - * @param timeout timeout of JedisPool - * @param businessID your business ID - */ - public BfdJodis(String zkAddr, int zkSessionTimeoutMs, String zkPath, - JedisPoolConfig poolConfig, int timeout, String businessID) { - - this.jedisPool = new RoundRobinJedisPool(zkAddr, zkSessionTimeoutMs, zkPath, poolConfig, - timeout); - this.businessID = businessID; - } - - /** - * @param zkAddr ZooKeeper connect string. e.g., "zk1:2181" - * @param zkSessionTimeoutMs ZooKeeper session timeout in ms - * @param zkPath the codis proxy dir on ZooKeeper. e.g., "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - * @param businessID your business ID - */ - public BfdJodis(String zkAddr, int zkSessionTimeoutMs, String zkPath, - JedisPoolConfig poolConfig, String businessID) { - - this.jedisPool = new RoundRobinJedisPool(zkAddr, zkSessionTimeoutMs, zkPath, poolConfig); - this.businessID = businessID; - } - - private String AddBid(String key) { - return this.businessID + '_' + key; - } - - private String[] AddBids(String... keys) { - String[] ret = new String[keys.length]; - for (int i = 0; i < keys.length; i++) { - ret[i] = this.businessID + '_' + keys[i]; - } - return ret; - } - - private String[] AddBidsDiv(String... keys) throws ValueException { - String[] ret = new String[keys.length]; - for (int i = 0; i < keys.length; i++) { - if (0 == (i % 2)) { - ret[i] = this.businessID + '_' + keys[i]; - } else if (keys[i].length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - ret[i] = keys[i]; - } - return ret; - } - - public String set(final String key, String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.set(AddBid(key), value); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to set data to Codis, e = {}", e.getMessage(), e); - return "ERROR"; - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - } - - - public String setexBytes(final String key, int seconds, final byte[] value) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.setex(AddBid(key).getBytes(), seconds, value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.setex(AddBid(key).getBytes(), seconds, value); - jediscon.close(); - return ret; - } - } - - - public String setBytes(final String key, final byte[] value) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.set(AddBid(key).getBytes(), value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.set(AddBid(key).getBytes(), value); - jediscon.close(); - return ret; - } - } - - /** - * Eric Added - */ - public String setObject(final String key, final Object value) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.set(AddBid(key).getBytes(), TObjectUtils.serialize(value)); - } catch (Exception e) { - logger.error("[BfdJodis] Set Object error...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return "FAIL"; - } - - - public byte[] getBytes(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - byte[] ret = jediscon.get(AddBid(key).getBytes()); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - byte[] ret = jediscon.get(AddBid(key).getBytes()); - jediscon.close(); - return ret; - } - } - - public String get(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.get(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.get(AddBid(key)); - jediscon.close(); - return ret; - } - } - - /** - * Eric Added

    Get Object from queue - */ - public Object getObject(final String key) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return TObjectUtils.unserialize(jediscon.get(AddBid(key).getBytes())); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to get object from Codis...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return null; - } - - public List mget(final String... keys) { - try { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.mget(AddBids(keys)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.mget(AddBids(keys)); - jediscon.close(); - return ret; - } - } - - public String mset(final String... keysvalues) throws ValueException { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.mset(AddBidsDiv(keysvalues)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.mset(AddBidsDiv(keysvalues)); - jediscon.close(); - return ret; - } - } - - - public Boolean exists(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Boolean ret = jediscon.exists(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Boolean ret = jediscon.exists(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long del(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.del(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.del(AddBid(key)); - jediscon.close(); - return ret; - } - } - - /** - * Eric Added

    Delete object by bytes key - */ - public Long delObject(final String key) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.del(AddBid(key).getBytes()); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to delete object from Codis...", e); - return -1L; - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - } - - public Long del(final String... keys) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.del(AddBids(keys)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.del(AddBids(keys)); - jediscon.close(); - return ret; - } - } - - public String type(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.type(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.type(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long expire(final String key, final int seconds) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.expire(AddBid(key), seconds); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.expire(AddBid(key), seconds); - jediscon.close(); - return ret; - } - } - - /** - * Set with expire time - */ - public String setex(final String key, final int seconds, String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.setex(AddBid(key), seconds, value); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to set data to Codis, e = {}", e.getMessage(), e); - return "ERROR"; - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - } - - public Long setnx(final String key, final String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.setnx(AddBid(key), value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.setnx(AddBid(key), value); - jediscon.close(); - return ret; - } - } - - public boolean setnxWithExpire(final String key, final String value, long expireSeconds) - throws Exception { - Jedis jediscon = null; - try { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - - jediscon = jedisPool.getResource(); - String wrapperKey = AddBid(key); - String ret = jediscon.set(wrapperKey, value, "nx", "ex", expireSeconds); - logger.info("[BfdJodis] Execute setnxWithExpire succeed, key: {}, expire: {} s.", wrapperKey, - expireSeconds); - return ret != null; - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - } - - public String getSet(final String key, final String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.getSet(AddBid(key), value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.getSet(AddBid(key), value); - jediscon.close(); - return ret; - } - } - - public Long decr(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.decr(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.decr(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long incr(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.incr(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.incr(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long incrBy(final String key, final long integer) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.incrBy(AddBid(key), integer); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.incrBy(AddBid(key), integer); - jediscon.close(); - return ret; - } - } - - public Long decrBy(final String key, final long integer) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.decrBy(AddBid(key), integer); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.decrBy(AddBid(key), integer); - jediscon.close(); - return ret; - } - } - - public Long append(final String key, final String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.append(AddBid(key), value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.append(AddBid(key), value); - jediscon.close(); - return ret; - } - } - - public Long llen(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.llen(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.llen(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public List lrange(final String key, final long start, final long end) { - try { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.lrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.lrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - /** - * Eric Added - */ - public List lrangeObject(final String key, final long start, final long end) { - Jedis jediscon = null; - List list = null; - try { - jediscon = jedisPool.getResource(); - List ret = jediscon.lrange(AddBid(key).getBytes(), start, end); - list = new ArrayList(); - for (byte[] obj : ret) { - list.add(TObjectUtils.unserialize(obj)); - } - - } catch (Exception e) { - logger.error("[BfdJodis] Failed to lrangeObject data from queue...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return list; - } - - public String ltrim(final String key, final long start, final long end) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.ltrim(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.ltrim(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - public String lset(final String key, final long index, final String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.lset(AddBid(key), index, value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.lset(AddBid(key), index, value); - jediscon.close(); - return ret; - } - } - - public Long lrem(final String key, final long count, final String value) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.lrem(AddBid(key), count, value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.lrem(AddBid(key), count, value); - jediscon.close(); - return ret; - } - } - - public String lpop(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.lpop(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.lpop(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long lpush(final String key, final String... strings) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.lpush(AddBid(key), strings); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.lpush(AddBid(key), strings); - jediscon.close(); - return ret; - } - } - - /** - * Added by Eric

    LPush Object list - */ - public void lpushObject(final String key, final List objects) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - for (Object o : objects) { - try { - Long ret = jediscon.lpush(AddBid(key).getBytes(), TObjectUtils.serialize(o)); - logger.info("[BfdJodis] lpush, key : {}, value: {}, ret: {}", AddBid(key), - o, ret); - } catch (Exception e) { - logger.error("[BfdJodis] Error adding object to queue. o = {}", o); - } - } - } catch (Exception e) { - logger.error("[BfdJodis] Failed to lpush object list to codis...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - } - - - public Long rpush(final String key, final String... strings) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.rpush(AddBid(key), strings); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.rpush(AddBid(key), strings); - jediscon.close(); - return ret; - } - } - - /** - * Added by Eric

    LPush Object list - */ - public void rpushObject(final String key, final List objects) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - for (Object o : objects) { - try { - Long ret = jediscon.rpushx(AddBid(key).getBytes(), TObjectUtils.serialize(o)); - } catch (Exception e) { - logger.error("[BfdJodis] Error adding object to queue. o = {}", o); - } - } - } catch (Exception e) { - logger.error("[BfdJodis] Failed to rpush object list to codis...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - } - - public String rpop(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.rpop(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.rpop(AddBid(key)); - jediscon.close(); - return ret; - } - } - - - /** - * Added by Eric

    Get object with rpop - */ - public Object lpopObject(final String key) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return TObjectUtils.unserialize(jediscon.lpop(AddBid(key).getBytes())); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to get object with lpopObject...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return null; - } - - /** - * Added by Eric

    Get object with rpop - */ - public Object rpopObject(final String key) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return TObjectUtils.unserialize(jediscon.rpop(AddBid(key).getBytes())); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to get object with rpopObject...", e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return null; - } - - - /** - * Added by Eric - */ - public Object hgetObject(final String key, final String field) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return TObjectUtils.unserialize(jediscon.hget(AddBid(key).getBytes(), field.getBytes())); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to hgetObject object from codis map, k: {}, v: {}...", key, - field, e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return null; - } - - /** - * Added by Eric - */ - public Long hsetObject(final String key, final String field, final Object value) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.hset(AddBid(key).getBytes(), field.getBytes(), TObjectUtils.serialize(value)); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to hsetObject object into codis map, k: {}, v: {}...", key, - field, e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return -1L; - } - - /** - * Added by Eric - */ - public boolean hexistObject(final String key, final String field) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.hexists(AddBid(key).getBytes(), field.getBytes()); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to check object in map, k: {}, v: {}...", key, field, e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return false; - } - - /** - * Added by Eric - */ - public Long hdelObject(final String key, final String field) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.hdel(AddBid(key).getBytes(), field.getBytes()); - } catch (Exception e) { - logger.error("[BfdJodis] Failed to delete object in map, k: {}, v: {}...", key, field, e); - } finally { - if (null != jediscon) { - jediscon.close(); - } - } - return -1L; - } - - - public String spop(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.spop(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.spop(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long scard(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.scard(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.scard(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Boolean sismember(final String key, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Boolean ret = jediscon.sismember(AddBid(key), member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Boolean ret = jediscon.sismember(AddBid(key), member); - jediscon.close(); - return ret; - } - } - - public Set smembers(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.smembers(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.smembers(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Long sadd(final String key, final String... members) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.sadd(AddBid(key), members); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.sadd(AddBid(key), members); - jediscon.close(); - return ret; - } - } - - public Long srem(final String key, final String... members) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.srem(AddBid(key), members); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.srem(AddBid(key), members); - jediscon.close(); - return ret; - } - } - - public Long zadd(final String key, final double score, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zadd(AddBid(key), score, member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zadd(AddBid(key), score, member); - jediscon.close(); - return ret; - } - } - - public Double zincrby(final String key, final double score, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Double ret = jediscon.zincrby(AddBid(key), score, member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Double ret = jediscon.zincrby(AddBid(key), score, member); - jediscon.close(); - return ret; - } - } - - public Long zrem(final String key, final String... members) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrem(AddBid(key), members); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrem(AddBid(key), members); - jediscon.close(); - return ret; - } - } - - public Long zrank(final String key, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrank(AddBid(key), member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrank(AddBid(key), member); - jediscon.close(); - return ret; - } - } - - public Long zrevrank(final String key, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrevrank(AddBid(key), member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zrevrank(AddBid(key), member); - jediscon.close(); - return ret; - } - } - - public Set zrange(final String key, final long start, final long end) { - try { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - public Set zrevrange(final String key, final long start, final long end) { - try { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrevrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrevrange(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - public Set zrangeByScore(final String key, final double min, final double max) { - try { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrangeByScore(AddBid(key), min, max); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.zrangeByScore(AddBid(key), min, max); - jediscon.close(); - return ret; - } - } - - public Long zcount(final String key, final double min, final double max) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zcount(AddBid(key), min, max); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zcount(AddBid(key), min, max); - jediscon.close(); - return ret; - } - } - - public Long zcard(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zcard(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zcard(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Double zscore(final String key, final String member) { - try { - Jedis jediscon = jedisPool.getResource(); - Double ret = jediscon.zscore(AddBid(key), member); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Double ret = jediscon.zscore(AddBid(key), member); - jediscon.close(); - return ret; - } - } - - public Long zremrangeByRank(final String key, final long start, final long end) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zremrangeByRank(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zremrangeByRank(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - public Long zremrangeByScore(final String key, final double start, final double end) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zremrangeByScore(AddBid(key), start, end); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.zremrangeByScore(AddBid(key), start, end); - jediscon.close(); - return ret; - } - } - - public Long hset(final String key, final String field, final String value) throws ValueException { - if (value.length() > 1048576) { - throw new ValueException("the value is too bigger than 1M"); - } - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hset(AddBid(key), field, value); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hset(AddBid(key), field, value); - jediscon.close(); - return ret; - } - } - - - public String hget(final String key, final String field) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.hget(AddBid(key), field); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.hget(AddBid(key), field); - jediscon.close(); - return ret; - } - } - - public List hmget(final String key, final String... fields) { - try { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.hmget(AddBid(key), fields); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.hmget(AddBid(key), fields); - jediscon.close(); - return ret; - } - } - - public String hmset(final String key, final Map hash) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.hmset(AddBid(key), hash); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.hmset(AddBid(key), hash); - jediscon.close(); - return ret; - } - } - - /** - * Monified by Eric - */ - public Long hincrBy(final String key, final String field, final long value) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.hincrBy(AddBid(key), field, value); - } catch (Exception e) { - logger.error("[BfdJodis] hincrBy Exception, e = {}", e.getMessage(), e); - return -1L; - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - } - - public Boolean hexists(final String key, final String field) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - return jediscon.hexists(AddBid(key), field); - } catch (Exception e) { - logger.error("[BfdJodis] hexists Exception, e = {}", e.getMessage(), e); - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - return Boolean.FALSE; - } - - public Long hdel(final String key, final String... fields) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hdel(AddBid(key), fields); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hdel(AddBid(key), fields); - jediscon.close(); - return ret; - } - } - - public Long hlen(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hlen(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.hlen(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public Set hkeys(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.hkeys(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Set ret = jediscon.hkeys(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public List hvals(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.hvals(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - List ret = jediscon.hvals(AddBid(key)); - jediscon.close(); - return ret; - } - } - - /*** - * @Fixed corrected by quanyou.chang - * @param key - * @return - */ - public Map hgetAll(final String key) { - Jedis jediscon = null; - try { - jediscon = jedisPool.getResource(); - Map ret = jediscon.hgetAll(AddBid(key)); - return ret; - } catch (Exception e) { - logger.error("[BfdJodis] hincrBy Exception, e = {}", e.getMessage(), e); - return null; - } finally { - if (jediscon != null) { - jediscon.close(); - } - } - } - - public Long pfadd(final String key, final String... strings) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.pfadd(AddBid(key), strings); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.pfadd(AddBid(key), strings); - jediscon.close(); - return ret; - } - } - - public Long pfcount(final String key) { - try { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.pfcount(AddBid(key)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - Long ret = jediscon.pfcount(AddBid(key)); - jediscon.close(); - return ret; - } - } - - public String pfmerge(final String key, final String... strings) { - try { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.pfmerge(AddBid(key), AddBids(strings)); - jediscon.close(); - return ret; - } catch (Exception e) { - Jedis jediscon = jedisPool.getResource(); - String ret = jediscon.pfmerge(AddBid(key), AddBids(strings)); - jediscon.close(); - return ret; - } - } - - public Long hsetnx(final String key, final String field, final String value) { - try (Jedis jedis = jedisPool.getResource()) { - return jedis.hsetnx(AddBid(key), field, value); - } catch (Exception e) { - logger.error("hsetnx统计出现异常" + e); - return -1l; - } - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CharUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CharUtil.java deleted file mode 100644 index f8981ca..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CharUtil.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.util.regex.Pattern; - -public class CharUtil { - -// public static void main(String[] args) { -// String[] strArr = new String[] { "腾马化:竞争到最后都是人品的竞争","www.micmiu.com", "!@#$%^&*()_+{}[]|\"'?/:;<>,.", "!¥……()——:;“”‘’《》,。?、", "不要啊", "やめて", "韩佳人", "???" }; -// for (String str : strArr) { -// System.out.println("===========> 测试字符串:" + str); -// System.out.println("正则判断结果:" + isChineseByREG(str) + " -- " + isChineseByName(str)); -// System.out.println("Unicode判断结果 :" + isChinese(str)); -// System.out.println("详细判断列表:"); -// char[] ch = str.toCharArray(); -// for (int i = 0; i < ch.length; i++) { -// char c = ch[i]; -// System.out.println(c + " --> " + (isChinese(c) ? "是" : "否")); -// } -// } -// } - - // 根据Unicode编码完美的判断中文汉字和符号 - private static boolean isChinese(char c) { - Character.UnicodeBlock ub = Character.UnicodeBlock.of(c); - if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS - || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B - || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS - || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION) { - return true; - } - return false; - } - - // 完整的判断中文汉字和符号 - public static boolean isChinese(String strName) { - char[] ch = strName.toCharArray(); - for (int i = 0; i < ch.length; i++) { - char c = ch[i]; - if (isChinese(c)) { - return true; - } - } - return false; - } - - // 只能判断部分CJK字符(CJK统一汉字) - public static boolean isChineseByREG(String str) { - if (str == null) { - return false; - } - Pattern pattern = Pattern.compile("[\\u4E00-\\u9FBF]+"); - return pattern.matcher(str.trim()).find(); - } - - // 只能判断部分CJK字符(CJK统一汉字) - public static boolean isChineseByName(String str) { - if (str == null) { - return false; - } - // 大小写不同:\\p 表示包含,\\P 表示不包含 - // \\p{Cn} 的意思为 Unicode 中未被定义字符的编码,\\P{Cn} 就表示 Unicode中已经被定义字符的编码 - String reg = "\\p{InCJK Unified Ideographs}&&\\P{Cn}"; - Pattern pattern = Pattern.compile(reg); - return pattern.matcher(str.trim()).find(); - } -} \ No newline at end of file diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CodisUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CodisUtils.java deleted file mode 100644 index 7c6e0e5..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CodisUtils.java +++ /dev/null @@ -1,191 +0,0 @@ -package com.bfd.mf.service.tools; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import redis.clients.jedis.JedisPoolConfig; - -import java.util.List; -import java.util.Set; - - -/** - * Created by BFD_377 on 2016/8/31. - */ -public class CodisUtils { - private static Logger logger = LoggerFactory.getLogger(CodisUtils.class); - - private BfdJodis bfdJodis = null; - /** - * 业务主键 - */ - private String businessId = null; - - public String type = ""; - - - public CodisUtils() { - try { - this.businessId = "mf_area_mapping" ; - JedisPoolConfig poolConfig = new JedisPoolConfig(); - bfdJodis = new BfdJodis("172.18.1.147:2182,172.18.1.148:2182,172.18.1.145:2182", 20000, "/zk/codis/db_MediaForceV3/proxy", poolConfig, 3000, businessId); - } catch (Exception e) { - e.printStackTrace(); - System.exit(1); - } - } - - - /*** - * 从coids当中获取实体名称,以及对应的别名 - * @return - */ - public JSONObject getEntryLists() { - JSONObject jsonObject = new JSONObject(); - - Set keysSet = bfdJodis.hkeys(businessId); - - for (String key : keysSet) { - logger.info("[CodisUtils Model] get Entry Name,the name is {}", key); - String sysWords = bfdJodis.hgetObject(businessId, key).toString(); - jsonObject.put(key, JSONArray.parseArray(sysWords)); - } - return jsonObject; - } - - public Object getObject(String key) { - - return bfdJodis.hgetObject(businessId, key); - - } - - - public Long delByBusinessId() { - return bfdJodis.del(businessId); - } - - - /** - * 设置类map结构 bussinessId_key, name, value - * - * @param key - * @param field - * @param object - * @return - */ - public long hsetObject(String key, String field, Object object) { - try { - return bfdJodis.hsetObject(key, field, object); - } catch (Exception e) { - e.printStackTrace(); - return -1l; - } - } - - /** - * 返回数量 - * - * @param key - * @return - */ - public int hgetObject(String key) { - try { - return Integer.parseInt(bfdJodis.hgetObject(businessId, key).toString()); - } catch (Exception e) { - e.printStackTrace(); - } - return 0; - } - - - /** - * 实现分布式锁 - * - * @param key - * @param value - * @return - */ - public Long setnx(String key, String value) { - try { - return bfdJodis.setnx(key, value); - } catch (ValueException e) { - e.printStackTrace(); - return null; - } - } - - - /** - * 统计次数 - * - * @param key - * @return - */ - public Long incr(String key) { - return bfdJodis.incr(key); - } - - - /** - * - */ - public String set(String key,String value){ - try { - return bfdJodis.set(key, value); - } catch (ValueException e) { - e.printStackTrace(); - } - return null; - } - - /** - * 获取之前的值,设置现在的值 - * - * @param key - * @param value - * @return - */ - public String getSet(String key, String value) { - try { - return bfdJodis.getSet(key, value); - } catch (ValueException e) { - e.printStackTrace(); - return null; - } - } - - public String get(String key) { - String result = bfdJodis.get(key); - logger.info("get current key from codis:" + businessId +"_"+key,"the result is "+result); - return result; - } - - - public Long hIncrBy(String key, String field, long val) { - try { - return bfdJodis.hincrBy(key, field, val); - } catch (Exception e) { - return bfdJodis.hincrBy(key, field, val); - } - } - - - public Long hsetnx(String key, String field, String value) { - return bfdJodis.hsetnx(key, field, value); - } - public Long append(String key, String value) { - try { - return bfdJodis.append(key, value); - } catch (ValueException e) { - e.printStackTrace(); - } - return 0L; - } - - public List lrange(String key){ - return bfdJodis.lrange(key, 0, -1); - } - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CustomStopWordsProvider.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CustomStopWordsProvider.java deleted file mode 100644 index c924f5d..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/CustomStopWordsProvider.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.bfd.mf.service.tools; - - -import net.sf.classifier4J.IStopWordProvider; -import net.sf.classifier4J.util.ToStringBuilder; - -import java.util.Arrays; - -/** - * Created by Changquanyou on 2017/9/8. - */ -public class CustomStopWordsProvider implements IStopWordProvider { - private String[] stopWords = (String[]) DataTypeSelectUtils.getStopEnDictSets().toArray(new String[0]); - private String[] sortedStopWords = null; - - public CustomStopWordsProvider() { - this.sortedStopWords = this.getStopWords(); - Arrays.sort(this.sortedStopWords); - } - - public String[] getStopWords() { - return this.stopWords; - } - - public boolean isStopWord(String word) { - return word != null && !"".equals(word)?Arrays.binarySearch(this.sortedStopWords, word.toLowerCase()) >= 0:false; - } - - public String toString() { - return (new ToStringBuilder(this)).append("stopWords.size()", (double)this.sortedStopWords.length).toString(); - } - -// public static void main(String[] args) { -// System.out.println(new CustomStopWordsProvider()); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBConnectionManager.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBConnectionManager.java deleted file mode 100644 index 4b911e0..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBConnectionManager.java +++ /dev/null @@ -1,226 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.sql.Connection; -import java.sql.Driver; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.*; - -public class DBConnectionManager { - - private static DBConnectionManager m_dbInstance; - - private static int m_ClientNum; - - @SuppressWarnings("rawtypes") - private Vector drivers = new Vector(); - @SuppressWarnings("rawtypes") - private Hashtable pools = new Hashtable(); - public int nCount; - public int iConID; - - public static synchronized DBConnectionManager getInstance(String name) { - if (m_dbInstance == null) - m_dbInstance = new DBConnectionManager(name); - m_ClientNum++; - return m_dbInstance; - } - - private DBConnectionManager(String name) { - init(name); - } - - public void freeConnection(String name, Connection con) { - DBConnectionPool pool = (DBConnectionPool) pools.get(name); - if (pool != null) { - pool.freeConnection(con); - } - } - - public Connection getConnection(String name) { - DBConnectionPool pool = (DBConnectionPool) pools.get(name); - if (pool != null) - return pool.getConnection(); - return null; - } - - public Connection getConnection(String name, long time) { - DBConnectionPool pool = (DBConnectionPool) pools.get(name); - if (pool != null) { - return pool.getConnection(time); - } - return null; - } - - @SuppressWarnings("rawtypes") - public void release() { - if (--m_ClientNum != 0) - return; - Enumeration allPools = pools.elements(); - while (allPools.hasMoreElements()) { - DBConnectionPool pool = (DBConnectionPool) allPools.nextElement(); - pool.release(); - } - Enumeration allDrivers = drivers.elements(); - while (allDrivers.hasMoreElements()) { - Driver driver = (Driver) allDrivers.nextElement(); - try { - DriverManager.deregisterDriver(driver); - } catch (SQLException e) { - } - } - System.gc(); - } - - @SuppressWarnings({ "unchecked"}) - private void createPools(Map props) { - Set propNames = props.keySet(); - for(String name:propNames){ - if (name.endsWith(".url")) { - String poolName = name.substring(0, name.lastIndexOf(".")); - String url = props.get(poolName + ".url"); - if (url == null) { - continue; - } - String user = props.get(poolName + ".user"); - String password = props.get(poolName + ".password"); - String maxconn="0"; - if(props.containsKey(poolName + ".maxconn")) - maxconn = props.get(poolName + ".maxconn"); - else - maxconn = "50"; - int max = 0; - try { - max = Integer.parseInt(maxconn); - } catch (Exception e) { - max = 50; - } - - DBConnectionPool pool = new DBConnectionPool(poolName, url, user, password, max); - pools.put(poolName, pool); - } - - } - } - - private void init(String name) { - Map config=PropertiesUtil.getProperties(name); - - if(config==null){ - System.exit(-1); - } - - loadDrivers(config); - createPools(config); - } - - @SuppressWarnings("unchecked") - private void loadDrivers(Map props) { - String driverClasses = props.get("drivers"); - StringTokenizer st = new StringTokenizer(driverClasses); - while (st.hasMoreElements()) { - String driverClassName = st.nextToken().trim(); - try { - Driver driver = (Driver) Class.forName(driverClassName).newInstance(); - DriverManager.registerDriver(driver); - drivers.addElement(driver); - } catch (Exception e) { - } - } - } - - class DBConnectionPool { - private int checkedOut; - @SuppressWarnings("rawtypes") - private Vector freeConnections = new Vector(); - private int maxConn; - private String name; - private String password; - private String URL; - private String user; - - public DBConnectionPool(String name, String URL, String user, String password, int maxConn) { - this.name = name; - this.URL = URL; - this.user = user; - this.password = password; - this.maxConn = maxConn; - } - - @SuppressWarnings("unchecked") - public synchronized void freeConnection(Connection con) { - freeConnections.addElement(con); - checkedOut--; - notifyAll(); - } - - @SuppressWarnings("resource") - public synchronized Connection getConnection() { - Connection con = null; - if (freeConnections.size() > 0) { - con = (Connection) freeConnections.firstElement(); - freeConnections.removeElementAt(0); - try { - if (con.isClosed() || !con.isValid(2)) { - checkedOut--; - con = null; - con = getConnection(); - } - } catch (SQLException e) { - checkedOut--; - con = null; - con = getConnection(); - } - } else if (maxConn == 0 || checkedOut < maxConn) { - con = newConnection(); - }else{ - } - - if (con != null) { - checkedOut++; - } - return con; - } - - public synchronized Connection getConnection(long timeout) { - long startTime = 0; - Connection con; - while ((con = getConnection()) == null) { - try { - wait(timeout); - } catch (InterruptedException e) { - } - if (startTime++ >= timeout) { - return null; - } - } - return con; - } - - @SuppressWarnings("rawtypes") - public synchronized void release() { - Enumeration allConnections = freeConnections.elements(); - while (allConnections.hasMoreElements()) { - Connection con = (Connection) allConnections.nextElement(); - try { - con.close(); - } catch (SQLException e) { - } - } - freeConnections.removeAllElements(); - } - - private Connection newConnection() { - Connection con = null; - try { - if (user == null) - con = DriverManager.getConnection(URL); - else - con = DriverManager.getConnection(URL, user, password); - } catch (SQLException e) { - return null; - } - return con; - } - } -} \ No newline at end of file diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBUtil.java deleted file mode 100644 index 1ee241c..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DBUtil.java +++ /dev/null @@ -1,326 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.sql.*; -import java.util.*; - - -/** - * the operation of the db - * @author ruining.he - * @createTime 2015年5月5日上午10:28:56 - * */ -public class DBUtil { - - private static String etc_path = ""; - private static DBConnectionManager dbManager = null; - private static Map map = Collections.synchronizedMap(new HashMap()); - private String conn_name; - - private DBUtil(String conn){ - if(dbManager==null) - dbManager = DBConnectionManager.getInstance(etc_path); - this.conn_name = conn; - } - - public static void init(String path){ - etc_path = path; - } - - public static DBUtil getInstance(String connectionName){ - if("".equals(etc_path) && dbManager==null){ - System.exit(0); - } - if(map.containsKey(connectionName)) - return map.get(connectionName); - else{ - DBUtil dbUtil = new DBUtil(connectionName); - map.put(connectionName, dbUtil); - return dbUtil; - } - } - - private DBConnectionManager getDBCONConnectionManager(){ - return dbManager; - } - - public List> query(String querySql){ - List> list = new ArrayList>(); - List columns = new ArrayList(); - - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn=null; - while(conn == null){ - conn = dbm.getConnection(conn_name); -// DateUtil.sleep(1); - } - - Statement statement = null; - ResultSet rs = null; - try { - conn.setAutoCommit(false); - statement=conn.createStatement(); - rs=statement.executeQuery(querySql); - ResultSetMetaData data = rs.getMetaData(); - for(int i=1;i<=data.getColumnCount();i++) { - columns.add(data.getColumnName(i)); - } - while(rs.next()) { - HashMap map = new HashMap(); - for(int i=0;i> queryOriginalColumn(String querySql){ - List> list = new ArrayList>(); - List columns = new ArrayList(); - - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn=null; - while(conn == null){ - conn = dbm.getConnection(conn_name); - try { - Thread.currentThread().sleep(1*1000); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - - Statement statement = null; - ResultSet rs = null; - try { - conn.setAutoCommit(false); - statement=conn.createStatement(); - rs=statement.executeQuery(querySql); - ResultSetMetaData data = rs.getMetaData(); - for(int i=1;i<=data.getColumnCount();i++){ - columns.add(data.getColumnName(i)); - } - while(rs.next()){ - HashMap map = new HashMap(); - for(int i=0;i> getQuaryResult(String quartReplyTable,String iid,Object node_name,Object website_source,Object keyword,Object title ,Object url){ - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn=null; - while(conn == null){ - conn = dbm.getConnection(conn_name); - - } - Statement statement = null; - ResultSet rs = null; - String querySql = ""; - try { - conn.setAutoCommit(false); - statement=conn.createStatement(); - rs=statement.executeQuery("select * from "+quartReplyTable+" where iid = '"+iid+"'"); - List> datalist = new ArrayList>(); - while(rs.next()){ - Map dataMap = new HashMap(); - dataMap.put("node_name", node_name); - dataMap.put("website_source", website_source); - dataMap.put("iid", rs.getObject("iid")); - dataMap.put("keyword", keyword); - dataMap.put("title", title); - dataMap.put("url", url); - dataMap.put("node_type", rs.getObject("node_type")); - dataMap.put("authorname", rs.getObject("authorname")); - dataMap.put("publicNumberName", rs.getObject("publicNumberName")); - dataMap.put("newstime", rs.getObject("newstime")); - dataMap.put("contents", rs.getObject("contents")); - dataMap.put("reply_cnt", rs.getObject("reply_cnt")); - dataMap.put("forward_num", rs.getObject("forward_num")); - dataMap.put("reply_up_cnt", rs.getObject("reply_up_cnt")); - dataMap.put("click_num", rs.getObject("click_num")); - int reply_cnt = 0; - if(rs.getObject("reply_cnt") != null){ - reply_cnt = Integer.parseInt((String) rs.getObject("reply_cnt")); - } - int forward_num = 0 ; - if(rs.getObject("forward_num") != null ){ - forward_num = Integer.parseInt((String) rs.getObject("forward_num")); - - } - dataMap.put("integra_sound_vol",1 + reply_cnt + forward_num); - dataMap.put("cate", rs.getObject("cate")); - dataMap.put("page_reply_cnt", rs.getObject("page_reply_cnt")); - dataMap.put("page_forward_num", rs.getObject("page_forward_num")); - datalist.add(dataMap); - - } - - return datalist; - } catch (Exception e) { - } finally{ - try { - if(rs!=null) - rs.close(); - if(statement!=null) - statement.close(); - } catch (Exception e2) { - } - dbm.freeConnection(conn_name, conn); - } - return null; - } - - - public int quaryCount(String querySql){ - - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn=null; - while(conn == null){ - conn = dbm.getConnection(conn_name); - try { - Thread.currentThread().sleep(1*1000); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - Statement statement = null; - ResultSet rs = null; - try { - conn.setAutoCommit(false); - statement=conn.createStatement(); - rs=statement.executeQuery(querySql); - while(rs.next()){ - return rs.getInt(1); - } - - conn.commit(); - } catch (Exception e) { - } finally{ - try { - if(rs!=null) - rs.close(); - if(statement!=null) - statement.close(); - } catch (Exception e2) { - } - dbm.freeConnection(conn_name, conn); - } - return 0; - - } - - public void executeBatch(List sqlCache){ - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn=null; - while(conn == null){ - conn = dbm.getConnection(conn_name); - } - try { - conn.setAutoCommit(false); - } catch (SQLException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - Statement statement = null; - try { - statement = conn.createStatement(); - for (int i = 0; i < sqlCache.size(); i++) { - statement.addBatch(sqlCache.get(i)); - } - statement.executeBatch(); - conn.commit(); - System.out.println("mysql execute batch committed..."); - }catch (Exception bue) { - bue.printStackTrace(); - - }finally{ - if(statement!=null){ - try { - statement.close(); - } catch (SQLException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - if(conn!=null){ - dbm.freeConnection(conn_name, conn); - } - } - - - } - - - public int execute(String sql){ - DBConnectionManager dbm=getDBCONConnectionManager(); - Connection conn= null; - while(conn == null){ - conn = dbm.getConnection(conn_name); -// DateUtil.sleep(1); - } - Statement st = null; - - try { - conn.setAutoCommit(false); - st = conn.createStatement(); - int rs = st.executeUpdate(sql); - conn.commit(); - return rs; -// } catch (com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException e1){ -//// return ConfigCache.CODE_EXIST_IN_DB_AND_NOT_EXIST_IN_DUPLICATE; -// return -10; - }catch (Exception e) { - - }finally{ - try { - if(st!=null) - st.close(); - } catch (Exception e2) { - } - dbm.freeConnection(conn_name, conn); - } - return 0; - } - -// public static void main(String[] args) { -// DBUtil.init("C:\\Users\\BFD_482\\workspace-luna\\etc\\db.properties"); -// List> l = DBUtil.getInstance("show_crawl_conf").query("SELECT * FROM `ecConfig`"); -// List> ll = DBUtil.getInstance("show_crawl_list").query("SELECT * FROM `eclist_000`"); -// -// -// } - -} \ No newline at end of file diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataCheckUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataCheckUtil.java deleted file mode 100644 index c2ed32a..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataCheckUtil.java +++ /dev/null @@ -1,299 +0,0 @@ -package com.bfd.mf.service.tools; - -import org.apache.commons.lang3.StringUtils; -import org.apache.log4j.Logger; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - - -public class DataCheckUtil { - - public static Pattern datePattrn = Pattern.compile("^\\d{4}\\-\\d{2}\\-\\d{2}\\s\\d{2}\\:\\d{2}:\\d{2}$"); - - public static Pattern dayPattrn = Pattern.compile("^\\d{2,4}\\-\\d{1,2}\\-\\d{1,2}$"); - - private static SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - - public static Pattern p = Pattern.compile("\\s+"); - - private static final Logger LOG = Logger.getLogger(DataCheckUtil.class); - - public static String chechData2(String dataStr){ - dataStr = dataStr.replace("Z",""); - dataStr = checkData(dataStr); - Matcher matcher = datePattrn.matcher(dataStr); - if(!matcher.find()){ - System.out.println("格式错误,使用当前时间 : " + dataStr); - dataStr = DateUtil.getDateTime(); - }else{ - dataStr = matcher.group(0); - } - return dataStr; - } - - public static String checkData(String dataStr){ - SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - if(StringUtils.isBlank(dataStr)){ - return ddf.format(new Date()); - } - if(dataStr.contains("-:")){ - dataStr = dataStr.replace("-:",":"); - } - if(dataStr.contains(":-")){ - dataStr = dataStr.replace(":-",":"); - } - - Matcher matcher = datePattrn.matcher(dataStr); - - if(!matcher.find()){ - dataStr = dataStr.trim(); - if(!p.matcher(dataStr).find()){ - if(!dayPattrn.matcher(dataStr).find()){ - return ddf.format(new Date()); - } - } - - String[] dates = dataStr.split("\\s+"); - String years = ""; - String times = ""; - if(dates.length == 2){ - years = dates[0]; - times = dates[1]; - }else{ - years = dates[0]; - } - - if(years.contains("/")){ - years = years.replace("/", "-"); - } - String[] yearStr = years.split("-"); - String yms = "" ; - if(yearStr.length == 3){ - String year = yearStr[0]; - String month = yearStr[1]; - String day = yearStr[2]; - if(year.length() == 2){ - year = "20"+year; - } - if(month.length() == 1){ - month = "0"+month; - } - if(day.length() == 1){ - day = "0"+day; - } - yms = year+"-"+month+"-"+day; - } - - String hms = ""; - if(StringUtils.isBlank(times)){ - hms = "00:00:00"; - }else{ - times = times.replace("/", ":"); - if(times.contains(":")){ - String[] timeStr = times.split(":"); - if( timeStr.length >= 3 ){ - String hours = timeStr[0]; - String mins = timeStr[1]; - String s = timeStr[2]; - - if(hours.length() == 1){ - hours = "0"+hours; - } - if(mins.length() == 1){ - mins = "0"+mins; - } - if(s.length() == 1){ - s = "0"+s; - } - hms = hours+":"+mins+":"+s; - }else if(timeStr.length == 2){ - String hours = timeStr[0]; - String mins = timeStr[1]; - String s = "00"; - if(hours.length() == 1){ - hours = "0"+hours; - } - if(mins.length() == 1){ - mins = "0"+mins; - } - hms = hours+":"+mins+":"+s; - } else { - String hours = timeStr[0]; - String mins = "00" ; - String s = "00"; - if(hours.length() == 1){ - hours = "0"+hours; - } - hms = hours+":"+mins+":"+s; - } - }else{ - if(isNum(times) && times.length()==2){ - hms = times+":00:00"; - }else if(isNum(times) && times.length()==1){ - hms = "0"+times+":00:00"; - }else{ - hms = "00:00:00" ; - } - } - } - if(StringUtils.isBlank(yms)){ - return ddf.format(new Date()); - } - if(yms != "" || hms != ""){ - return yms+" "+hms; - } - } - return dataStr ; - } - - private static boolean isNum(String time){ - Pattern p = Pattern.compile("\\d+"); - if(p.matcher(time).find()){ - return true ; - } - return false ; - } - - public static String convertStringTotime(String datetime){ - if(StringUtils.isBlank(datetime)){ - return DateUtil.getDateTime(System.currentTimeMillis()); - } - String creationTime = ""; - if(datetime.length() == 13){ - creationTime = DateUtil.getDateTime(Long.valueOf(datetime)); - }else{ - creationTime = DateUtil.getDateTime(Long.valueOf(datetime) *1000); - } - return creationTime ; - - } - - public static long convertStringToLong(String datetime){ - if(StringUtils.isBlank(datetime)){ - return System.currentTimeMillis(); - } - long creationTime ; - if(datetime.length() == 13){ - creationTime = Long.valueOf(datetime); - }else{ - creationTime = Long.valueOf(datetime) *1000; - } - return creationTime ; - } - - public static long convertTimeTotime(String datetime){ - if(StringUtils.isBlank(datetime)){ - return System.currentTimeMillis() / 1000; - } - long creationTime ; - if(datetime.length() == 13){ - creationTime = Long.valueOf(datetime) / 1000; - }else{ - creationTime = Long.valueOf(datetime) ; - } - return creationTime ; - - } - - - public static long convertDateTotime(String datetime){ - if(StringUtils.isBlank(datetime)){ - return System.currentTimeMillis() / 1000; - } - long creationTime = 0; - try { - SimpleDateFormat ddf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - creationTime = Long.valueOf(ddf1.parse(datetime).getTime()) / 1000; - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - return creationTime ; - - } - - public static String getCurrentTime(){ - long dateTime = System.currentTimeMillis() ; - SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - return ddf.format(new Date(dateTime)); - } - - public static String getCurrentTime(long dateTime){ - SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - return ddf.format(new Date(dateTime)); - } - - public static String getDate(long dateTime){ - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX"); - return sdf.format(new Date(dateTime)); - } - - public static String getDate(String dateTime){ - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX"); - SimpleDateFormat ddf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - try { - Date date = ddf.parse(dateTime) ; - return sdf.format(date); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - LOG.error("DataCheckUtil getDate() err data:"+dateTime); - - } - return sdf.format(new Date()); - } - - public static long getDay(long dateTime){ - try{ - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - String dayStr = sdf.format(new Date(dateTime)); - Date date = sdf.parse(dayStr); - return date.getTime(); - }catch(Exception e){ - e.printStackTrace(); - LOG.error("DataCheckUtil getDay() err data:"+dateTime); - } - return 0; - } - - public static long getDay(String dateTime){ - try{ - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - Date date = sdf.parse(dateTime); - return date.getTime(); - }catch(Exception e){ - e.printStackTrace(); - LOG.error("DataCheckUtil getDay2() err data:"+dateTime); - } - return 0; - } - - -// public static void main(String[] args) { -// //System.out.println(checkData("")); -// /*System.out.println(System.currentTimeMillis()); -// System.out.println(Calendar.getInstance().getTimeInMillis() / 1000); -// System.out.println(new Date().getTime() / 1000); -// System.out.println(DateUtil.getDateTime((System.currentTimeMillis() / 1000) * 1000)); -// System.out.println(convertStringTotime("1558077405")); -// System.out.println(convertTimeTotime(null));*/ -// //System.out.println(DateUtil.getTimeMillis("2019-03-01 01:01:01")); -// -// /*String aa = DataCheckUtil.convertStringTotime("1563245342"); -// System.out.println(aa);*/ -// /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); -// try { -// Date date = sdf.parse("2019-03-01"); -// System.out.println(date.getTime()); -// } catch (ParseException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// }*/ -// System.out.println(getDate("2019-03-01 01:01:01")); -// } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataTypeSelectUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataTypeSelectUtils.java deleted file mode 100644 index 440e541..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DataTypeSelectUtils.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.bfd.mf.service.tools; - -/** - * Created by quanyou.chang@baifendian.com on 2016/8/19. - */ - -import org.apache.log4j.Logger; - -import java.io.BufferedReader; -import java.io.FileInputStream; -import java.io.InputStreamReader; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; - -/** - * description:数据类型判断-----》media or news - */ -public class DataTypeSelectUtils { - private static final Logger logger = Logger.getLogger(DataTypeSelectUtils.class); - - - private static Set stopDictSets; - - private static Set stopEnDictSets; - - private static Set posTagDictSets; - private static Map cityMapping; - - // private static String indexTemplate = ""; - static{ - try { - stopDictSets = new HashSet<>(); - BufferedReader stopWordsIn = new BufferedReader(new InputStreamReader(new FileInputStream("../etc/stopWords.txt"))); - String stopWord = ""; - while ((stopWord = stopWordsIn.readLine()) != null){ - stopDictSets.add(stopWord); - } - logger.info("The Stop Dict Set Size Is : "+ stopDictSets.size()); - - stopEnDictSets = new HashSet<>(); - BufferedReader stopEnWordsIn = new BufferedReader(new InputStreamReader(new FileInputStream("../etc/stopWordsEN.txt"))); - String stopEnWord = ""; - while ((stopEnWord = stopEnWordsIn.readLine()) != null){ - stopEnDictSets.add(stopEnWord); - } - logger.info("The EN Stop Dict Set Size Is : "+ stopEnDictSets.size()); - - - posTagDictSets = new HashSet<>(); - BufferedReader posTagWordsIn = new BufferedReader(new InputStreamReader(new FileInputStream("../etc/posTag.txt"))); - String posTagWord = ""; - while ((posTagWord = posTagWordsIn.readLine()) != null){ - posTagDictSets.add(posTagWord); - } - logger.info("The Pos Tag Dict Set Size Is : "+ posTagDictSets.size()); - /*cityMapping = new HashMap<>(); - BufferedReader cityMappingIn = new BufferedReader(new InputStreamReader(DataTypeSelectUtils.class.getResourceAsStream("/cityMapping.txt"))); - String cityLine = ""; - while ((cityLine = cityMappingIn.readLine()) != null){ - String[] arrays = cityLine.split(" "); - String province = arrays [0]; - String city = arrays [1]; - cityMapping.put(city,province); - } - logger.info("The City of Province mapping size is : "+ cityMapping.size()); - - BufferedReader indexMappingIn = new BufferedReader(new InputStreamReader(DataTypeSelectUtils.class.getResourceAsStream("/indexTemplate.json"))); - String templateIn; - while ((templateIn = indexMappingIn.readLine()) != null){ - indexTemplate += templateIn; - } - logger.info("The index of index mapping size is : "+ indexTemplate);*/ - - - }catch (Exception e){ - e.printStackTrace(); - logger.error("[DataTypeSelectUtils data type parse error]",e); - System.exit(1); - } - } - - /** - * 停用词列表 - * @return - */ - public static Set getStopDictSets(){ - return stopDictSets; - } - - /** - * EN 停用词列表 - * @return - */ - public static Set getStopEnDictSets(){ - return stopEnDictSets; - } - - /** - * source 修正来源表 - * @return - */ - public static Set getPosTagDictSets(){ - return posTagDictSets; - } - - /** - * city - * province - * @return - */ - /* public static Map getCityMapping(){ - return cityMapping; - }*/ - - /** - * 获取索引列表 - * @return - */ - /* public static String getIndexTemplate(){ - return indexTemplate; - }*/ -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DateUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DateUtil.java deleted file mode 100644 index 45936cc..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/DateUtil.java +++ /dev/null @@ -1,906 +0,0 @@ -package com.bfd.mf.service.tools; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import java.text.ParseException; -import java.text.ParsePosition; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.GregorianCalendar; - - -/** - * 日期处理工具类 - */ - -public class DateUtil { - //~ Static fields/initializers ============================================= - - - private static Log log = LogFactory.getLog(DateUtil.class); - private static String defaultDatePattern = null; - private static String timePattern = "HH:mm"; - public static final String TS_FORMAT = DateUtil.getDatePattern() + " HH:mm:ss.S"; - private static Calendar cale = Calendar.getInstance(); - - - //~ Methods ================================================================ - - public DateUtil(){ - } - - /** - * 获得服务器当前日期及时间,以格式为:yyyy-MM-dd HH:mm:ss的日期字符串形式返回 - */ - public static String getDateTime(){ - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - return datetime.format(Calendar.getInstance().getTime()); - } catch(Exception e){ - log.debug("DateUtil.getDateTime():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器当前日期及时间,以格式为:yyyy-MM-dd HH:mm:ss的日期字符串形式返回 - */ - public static String getDateTime(long date){ - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - return datetime.format(new Date(date)); - } catch(Exception e){ - log.debug("DateUtil.getDateTime():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器当前日期,以格式为:yyyy-MM-dd的日期字符串形式返回 - */ - public static String getDate(){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - return date.format(Calendar.getInstance().getTime()); - } catch(Exception e){ - log.debug("DateUtil.getDate():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器当前时间,以格式为:HH:mm:ss的日期字符串形式返回 - */ - public static String getTime(){ - String temp = ""; - try{ - SimpleDateFormat time = new SimpleDateFormat("HH:mm:ss"); - temp += time.format(cale.getTime()); - return temp; - } catch(Exception e){ - log.debug("DateUtil.getTime():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器当前时间,以格式为:HH:mm:ss的日期字符串形式返回 - */ - public static int getHour(){ - int temp = 0; - try{ - temp = Calendar.getInstance().get(Calendar.HOUR_OF_DAY); - return temp; - } catch(Exception e){ - log.debug("DateUtil.getTime():" + e.getMessage()); - return 0; - } - } - - /** - * 返回日期加X天后的日期 - */ - @SuppressWarnings("static-access") - public static int getHour(String fromdate){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - GregorianCalendar gCal = new GregorianCalendar(); - Date datetime = date.parse(fromdate) ; - gCal.setTime(datetime) ; - return gCal.get(gCal.HOUR_OF_DAY); - } catch(Exception e){ - log.debug("DateUtil.addDay():" + e.toString()); - return 0; - } - } - - - public static int getMinute(){ - int temp = 0; - try{ - temp = Calendar.getInstance().get(Calendar.MINUTE); - return temp; - } catch(Exception e){ - log.debug("DateUtil.getTime():" + e.getMessage()); - return 0; - } - } - - - /** - * 统计时开始日期的默认值, - * 今年的开始时间 - */ - public static String getStartDate(){ - try{ - return getYear() + "-01-01"; - } catch(Exception e){ - log.debug("DateUtil.getStartDate():" + e.getMessage()); - return ""; - } - } - - /** - * 统计时结束日期的默认值 - */ - public static String getEndDate(){ - try{ - return getDate(); - } catch(Exception e){ - log.debug("DateUtil.getEndDate():" + e.getMessage()); - return ""; - } - } - - - /** - * 获得服务器当前日期的年份 - */ - public static String getYear(){ - try{ - //返回的int型,需要字符串转换 - return String.valueOf(cale.get(Calendar.YEAR)); - } catch(Exception e){ - log.debug("DateUtil.getYear():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器当前日期的月份 - */ - public static String getMonth(){ - try{ - //一个数字格式,非常好 - java.text.DecimalFormat df = new java.text.DecimalFormat(); - df.applyPattern("00"); - return df.format((cale.get(Calendar.MONTH) + 1)); - //return String.valueOf(cale.get(Calendar.MONTH) + 1); - } catch(Exception e){ - log.debug("DateUtil.getMonth():" + e.getMessage()); - return ""; - } - } - - /** - * 获得服务器在当前月中天数 - */ - public static String getDay(){ - try{ - return String.valueOf(cale.get(Calendar.DAY_OF_MONTH)); - } catch(Exception e){ - log.debug("DateUtil.getDay():" + e.getMessage()); - return ""; - } - } - - /** - * 比较两个日期相差的天数, - * 第一个日期要比第二个日期要晚 - */ - public static int getDays(String date1,String date2){ - int margin; - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - ParsePosition pos = new ParsePosition(0); - ParsePosition pos1 = new ParsePosition(0); - Date dt1 = date.parse(date1,pos); - Date dt2 = date.parse(date2,pos1); - long l = dt1.getTime() - dt2.getTime(); - margin = (int)(l / (24 * 60 * 60 * 1000)); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getDays():" + e.toString()); - return 0; - } - } - - /** - * 比较两个日期相差的 小时数, - * 第一个日期要比第二个日期要晚 - */ - public static int getHours(String date1,String date2){ - int margin; - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - ParsePosition pos = new ParsePosition(0); - ParsePosition pos1 = new ParsePosition(0); - Date dt1 = datetime.parse(date1,pos); - Date dt2 = datetime.parse(date2,pos1); - long l = dt1.getTime() - dt2.getTime(); - margin = (int)(l / ( 60 * 60 * 1000)); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getHours():" + e.toString()); - return 0; - } - } - - /** - * 比较两个日期相差的分钟数, - * 第一个日期要比第二个日期要晚 - */ - public static int getMinutes(String date1,String date2){ - int margin; - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - ParsePosition pos = new ParsePosition(0); - ParsePosition pos1 = new ParsePosition(0); - Date dt1 = datetime.parse(date1,pos); - Date dt2 = datetime.parse(date2,pos1); - long l = dt1.getTime() - dt2.getTime(); - margin = (int)(l / ( 60 * 1000)); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getMinutes():" + e.toString()); - return 0; - } - } - - /** - * 返回日期加X天后的日期 - */ - @SuppressWarnings("static-access") - public static int getMinutes(String fromdate){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - GregorianCalendar gCal = new GregorianCalendar(); - Date datetime = date.parse(fromdate) ; - gCal.setTime(datetime) ; - return gCal.get(gCal.MINUTE); - } catch(Exception e){ - log.debug("DateUtil.addDay():" + e.toString()); - return 0; - } - } - - /** - * 比较两个日期相差的秒数, - * 第一个日期要比第二个日期要晚 - */ - public static int getSeconds(String date1,String date2){ - int margin; - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Date dt1 = datetime.parse(date1); - Date dt2 = datetime.parse(date2); - long dateintvlong = dt1.getTime() - dt2.getTime(); - margin = (int)(dateintvlong /1000); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getSeconds():" + e.toString()); - return 0; - } - } - - - /** - * 比较两个日期相差的天数,格式不一样 - * 第一个日期要比第二个日期要晚 - */ - public static double getDoubledays(String date1,String date2){ - double margin; - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - ParsePosition pos = new ParsePosition(0); - ParsePosition pos1 = new ParsePosition(0); - Date dt1 = datetime.parse(date1,pos); - Date dt2 = datetime.parse(date2,pos1); - long l = dt1.getTime() - dt2.getTime(); - margin = (l / (24 * 60 * 60 * 1000.00)); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getMargin():" + e.toString()); - return 0; - } - } - - - /** - * 比较两个日期相差的月数 - */ - public static int getMonthMargin(String date1,String date2){ - int margin; - try{ - margin = (Integer.parseInt(date2.substring(0,4)) - Integer.parseInt(date1.substring(0,4)))* 12; - margin += (Integer.parseInt(date2.substring(4,7).replaceAll("-0","-")) - Integer.parseInt(date1.substring(4,7).replaceAll("-0","-"))); - return margin; - } catch(Exception e){ - log.debug("DateUtil.getMargin():" + e.toString()); - return 0; - } - } - - /** - * 返回日期加X天后的日期 - */ - public static String addDay(String fromdate,int i){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - GregorianCalendar gCal = new GregorianCalendar(Integer.parseInt(fromdate.substring(0,4)),Integer.parseInt(fromdate.substring(5,7))-1,Integer.parseInt(fromdate.substring(8,10))); - gCal.add(GregorianCalendar.DATE,i); - return date.format(gCal.getTime()); - } catch(Exception e){ - log.debug("DateUtil.addDay():" + e.toString()); - return getDate(); - } - } - - /** - * 返回日期加X天后的日期 - */ - public static String addDay(int i){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - Calendar cale = Calendar.getInstance() ; - cale.add(Calendar.DAY_OF_MONTH, i) ; - return date.format(cale.getTime()); - } catch(Exception e){ - log.debug("DateUtil.addDay():" + e.toString()); - return getDate(); - } - } - - /** - * 返回日期加X月后的日期 - */ - public static String addMonth(String fromdate,int i){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - GregorianCalendar gCal = new GregorianCalendar(Integer.parseInt(fromdate.substring(0,4)),Integer.parseInt(fromdate.substring(5,7))-1,Integer.parseInt(fromdate.substring(8,10))); - gCal.add(GregorianCalendar.MONTH,i); - return date.format(gCal.getTime()); - } catch(Exception e){ - log.debug("DateUtil.addMonth():" + e.toString()); - return getDate(); - } - } - - /** - * 返回日期加X年后的日期 - */ - public static String addYear(String fromdate,int i){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - GregorianCalendar gCal = new GregorianCalendar(Integer.parseInt(fromdate.substring(0,4)),Integer.parseInt(fromdate.substring(5,7))-1,Integer.parseInt(fromdate.substring(8,10))); - gCal.add(GregorianCalendar.YEAR,i); - return date.format(gCal.getTime()); - } catch(Exception e){ - log.debug("DateUtil.addYear():" + e.toString()); - return ""; - } - } - - - /** - * 返回某年某月中的最大天 - */ - public static int getMaxDay(String year,String month){ - int day = 0; - try{ - int iyear = Integer.parseInt(year); - int imonth = Integer.parseInt(month); - if(imonth == 1 || imonth == 3 || imonth == 5 || imonth == 7 || imonth == 8 || imonth == 10 || imonth == 12){ - day = 31; - } else if(imonth == 4 || imonth == 6 || imonth == 9 || imonth == 11){ - day = 30; - } else if((0 == (iyear % 4)) && (0 != (iyear % 100)) || (0 == (iyear % 400))){ - day = 29; - } else{ - day = 28; - } - return day; - } catch(Exception e){ - log.debug("DateUtil.getMonthDay():" + e.toString()); - return 1; - } - } - - - - /** - * 格式化日期 - */ - @SuppressWarnings("static-access") - public String rollDate(String orgDate,int Type,int Span){ - try{ - String temp = ""; - int iyear,imonth,iday; - int iPos = 0; - char seperater = '-'; - if(orgDate == null || orgDate.length() < 6){ - return ""; - } - - iPos = orgDate.indexOf(seperater); - if(iPos > 0){ - iyear = Integer.parseInt(orgDate.substring(0,iPos)); - temp = orgDate.substring(iPos + 1); - } else{ - iyear = Integer.parseInt(orgDate.substring(0,4)); - temp = orgDate.substring(4); - } - - iPos = temp.indexOf(seperater); - if(iPos > 0){ - imonth = Integer.parseInt(temp.substring(0,iPos)); - temp = temp.substring(iPos + 1); - } else{ - imonth = Integer.parseInt(temp.substring(0,2)); - temp = temp.substring(2); - } - - imonth--; - if(imonth < 0 || imonth > 11){ - imonth = 0; - } - - iday = Integer.parseInt(temp); - if(iday < 1 || iday > 31) - iday = 1; - - Calendar orgcale = Calendar.getInstance(); - orgcale.set(iyear,imonth,iday); - temp = this.rollDate(orgcale,Type,Span); - return temp; - }catch(Exception e){ - return ""; - } - } - - public static String rollDate(Calendar cal,int Type,int Span){ - try{ - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); - String temp = ""; - Calendar rolcale; - rolcale = cal; - rolcale.add(Type,Span); - temp = date.format(rolcale.getTime()); - return temp; - }catch(Exception e){ - return ""; - } - } - - /** - * - * 返回默认的日期格式 - * - */ - public static synchronized String getDatePattern() { - defaultDatePattern = "yyyy-MM-dd"; - return defaultDatePattern; - } - - /** - * 将指定日期按默认格式进行格式代化成字符串后输出如:yyyy-MM-dd - */ - public static final String getDate(Date aDate) { - SimpleDateFormat df = null; - String returnValue = ""; - - if (aDate != null) { - df = new SimpleDateFormat(getDatePattern()); - returnValue = df.format(aDate); - } - - return (returnValue); - } - - - - /** - * 取得给定日期的时间字符串,格式为当前默认时间格式 - */ - public static String getTimeNow(Date theTime) { - return getDateTime(timePattern, theTime); - } - - /** - * 取得当前时间的Calendar日历对象 - */ - public Calendar getToday() throws ParseException { - Date today = new Date(); - SimpleDateFormat df = new SimpleDateFormat(getDatePattern()); - String todayAsString = df.format(today); - Calendar cal = new GregorianCalendar(); - cal.setTime(convertStringToDate(todayAsString)); - return cal; - } - - /** - * 将日期类转换成指定格式的字符串形式 - */ - public static final String getDateTime(String aMask, Date aDate) { - SimpleDateFormat df = null; - String returnValue = ""; - - if (aDate == null) { - log.error("aDate is null!"); - } else { - df = new SimpleDateFormat(aMask); - returnValue = df.format(aDate); - } - return (returnValue); - } - - /** - * 将指定的日期转换成默认格式的字符串形式 - */ - public static final String convertDateToString(Date aDate) { - return getDateTime(getDatePattern(), aDate); - } - - - /** - * 将日期字符串按指定格式转换成日期类型 - * @param aMask 指定的日期格式,如:yyyy-MM-dd - * @param strDate 待转换的日期字符串 - */ - - public static final Date convertStringToDate(String aMask, String strDate) - throws ParseException { - SimpleDateFormat df = null; - Date date = null; - df = new SimpleDateFormat(aMask); - - if (log.isDebugEnabled()) { - log.debug("converting '" + strDate + "' to date with mask '" - + aMask + "'"); - } - try { - date = df.parse(strDate); - } catch (ParseException pe) { - log.error("ParseException: " + pe); - throw pe; - } - return (date); - } - - /** - * 将日期字符串按默认格式转换成日期类型 - */ - public static Date convertStringToDate(String strDate) - throws ParseException { - Date aDate = null; - - try { - if (log.isDebugEnabled()) { - log.debug("converting date with pattern: " + getDatePattern()); - } - aDate = convertStringToDate(getDatePattern(), strDate); - } catch (ParseException pe) { - log.error("Could not convert '" + strDate - + "' to a date, throwing exception"); - throw new ParseException(pe.getMessage(), - pe.getErrorOffset()); - - } - - return aDate; - } - - /** - * 返回一个JAVA简单类型的日期字符串 - */ - public static String getSimpleDateFormat(){ - SimpleDateFormat formatter=new SimpleDateFormat(); - String NDateTime=formatter.format(new Date()); - return NDateTime; - } - - /** - * 将两个字符串格式的日期进行比较 - * @param last 要比较的第一个日期字符串 - * @param now 要比较的第二个日期格式字符串 - * @return true(last 在now 日期之前),false(last 在now 日期之后) - */ - public static boolean compareTo(String last, String now) { - try { - SimpleDateFormat formatter = new SimpleDateFormat( - "yyyy-MM-dd HH:mm:ss"); - Date temp1 = formatter.parse(last); - Date temp2 = formatter.parse(now); - if (temp1.after(temp2)) - return false; - else if (temp1.before(temp2)) - return true; - } catch (ParseException e) { - log.debug(e.getMessage()); - } - return false; - } - - - /** - * 将两个字符串格式的日期进行比较 - * @param last 要比较的第一个日期字符串 - * @param now 要比较的第二个日期格式字符串 - * @return true(last 在now 日期之前),false(last 在now 日期之后) - */ - public static boolean compareToForBBS(String last, String now) { - try { - if(last.equals(now)) - return true; - SimpleDateFormat formatter = new SimpleDateFormat( - "yyyy-MM-dd"); - Date temp1 = formatter.parse(last); - Date temp2 = formatter.parse(now); - if (temp1.after(temp2)) - return false; - else if (temp1.before(temp2)) - return true; - } catch (ParseException e) { - log.debug(e.getMessage()); - } - return false; - } - - - - - - /** - * 为查询日期添加最小时间 - * @param 目标类型Date - * @param 转换参数Date - * @return - */ - @SuppressWarnings("deprecation") - public static Date addStartTime(Date param) { - Date date = param; - try{ - date.setHours(0); - date.setMinutes(0); - date.setSeconds(0); - return date; - }catch(Exception ex){ - return date; - } - } - - - - /** - * 为查询日期添加最大时间 - * @param 目标类型Date - * @param 转换参数Date - * @return - */ - @SuppressWarnings("deprecation") - public static Date addEndTime(Date param) { - Date date = param; - try{ - date.setHours(23); - date.setMinutes(59); - date.setSeconds(0); - return date; - }catch(Exception ex){ - return date; - } - } - - - - /** - * 返回系统现在年份中指定月份的天数 - * @param 月份month - * @return 指定月的总天数 - */ - @SuppressWarnings("deprecation") - public static String getMonthLastDay(int month) - { - Date date=new Date(); - int[][] day={{0,30,28,31,30,31,30,31,31,30,31,30,31}, - {0,31,29,31,30,31,30,31,31,30,31,30,31}}; - int year=date.getYear()+1900; - if(year%4==0 && year%100!=0 || year%400==0) - { - return day[1][month]+""; - } - else - { - return day[0][month]+""; - } - } - - /** - * 返回指定年份中指定月份的天数 - * @param 年份year - * @param 月份month - * @return 指定月的总天数 - */ - public static String getMonthLastDay(int year,int month) - { - int[][] day={{0,30,28,31,30,31,30,31,31,30,31,30,31}, - {0,31,29,31,30,31,30,31,31,30,31,30,31}}; - if(year%4==0 && year%100!=0 || year%400==0) - { - return day[1][month]+""; - } - else - { - return day[0][month]+""; - } - } - - /** - * 取得当前时间的日戳 - * @return - */ - @SuppressWarnings("deprecation") - public static String getTimestamp(){ - Date date=new Date(); - String timestamp=""+(date.getYear()+1900)+date.getMonth()+date.getDate()+date.getMinutes()+date.getSeconds()+date.getTime(); - return timestamp; - } - /** - * 取得指定时间的日戳 - * @return - */ - @SuppressWarnings("deprecation") - public static String getTimestamp(Date date){ - String timestamp=""+(date.getYear()+1900)+date.getMonth()+date.getDate()+date.getMinutes()+date.getSeconds()+date.getTime(); - return timestamp; - } - - - public static Date getDate(String time) { - Date date = new Date(); - try { - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - date = datetime.parse(time); - } catch (ParseException e) { - e.printStackTrace(); - } - return date; - } - - - public static long getTimeMillis(String datetime){ - long timemillis = 0 ; - Calendar cal = Calendar.getInstance(); - Date date = getDate(datetime) ; - cal.setTime(date) ; - timemillis = cal.getTimeInMillis() ; - return timemillis ; - } - - - public static long getsmallSec(String datetime1,String datetime2){ - long time1 = 0 ; - long time2 = 0 ; - long time = 0 ; - if(datetime1!=null){ - time1 = getTimeMillis(datetime1) ; - } - if(datetime2!=null){ - time2 = getTimeMillis(datetime2) ; - } - if(time1==0){ - time = time2 ; - }else if(time2==0){ - time = time1 ; - }else if(time1>time2){ - time = time2 ; - }else{ - time = time1 ; - } - time = time/1000 ; - return time ; - } - - /** - * @Description: TODO - * @param calendarField 修改的字段 - * @param calc add/sub - * @param n - * @return  - *  - * @return String    - * @throws - */ - public static String getDatetimeNfieldgap(int calendarField,String calc,int n){ - try{ - SimpleDateFormat datetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Calendar cal = Calendar.getInstance() ; - int value = cal.get(calendarField) ; - if(calc.equals("add")){ - cal.set(calendarField, value+n) ; - }else if(calc.equals("sub")){ - cal.set(calendarField, value-n); - } - return datetime.format(cal.getTime()); - } catch(Exception e){ - log.debug("DateUtil.getDay():" + e.getMessage()); - return "" ; - } - } - - @SuppressWarnings("static-access") - public static void sleep(int seconds){ - if(seconds<1) - return; - try { - Thread.currentThread().sleep(seconds*1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - @SuppressWarnings("static-access") - public static void sleepLong(long millisecond){ - if(millisecond<1) - return; - try { - Thread.currentThread().sleep(millisecond); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - public static long getday(){ - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); - Calendar calendar = Calendar.getInstance(); - try { - return dateFormat.parse(dateFormat.format(calendar.getTime())).getTime(); - } catch (ParseException e) { - return 0L; - } - } - /** - * 返回当前时间日期减去一个小时 - */ - public static String getbeforeHour(){ - try{ - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.set(Calendar.HOUR, calendar.get(Calendar.HOUR) - 1);// 当前时间减去1小时 - SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - date.format(calendar.getTime()); - return date.format(calendar.getTime()); - } catch(Exception e){ - log.debug("DateUtil.addDay():" + e.toString()); - return ""; - } - } - //获取一个小时之前的时间戳 - public static long getbeforonecurr(){ - try { - Date date = new Date(); - Long l_date = date.getTime(); - return l_date-60*60*1000; - } catch (Exception e) { - return 0L; - // e.printStackTrace(); - } - } - - -// public static void main(String[] args) { -// String flag = getDateTime(0); -// System.out.println(flag); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/EnLPUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/EnLPUtils.java deleted file mode 100644 index b3a6bc1..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/EnLPUtils.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.bfd.mf.service.tools; - -/** - * Created by quanyou.chang@baifendian.com on 2016/8/8. - */ - -import com.alibaba.fastjson.JSON; -import net.sf.classifier4J.DefaultTokenizer; -import net.sf.classifier4J.Utilities; -import net.sf.classifier4J.summariser.SimpleSummariser; - -import java.util.*; - -/** - * description:HanLP Process For KeyWords And Abstract - */ -public class EnLPUtils { - private static CustomStopWordsProvider customStopWordsProvider = new CustomStopWordsProvider(); - private static SimpleSummariser simpleSummariser = new SimpleSummariser(); - - - private static Map sortByValue(Map map,int topSize) { - List list = new LinkedList(map.entrySet()); - Collections.sort(list, new Comparator() { - - public int compare(Object o1, Object o2) { - return -((Comparable) ((Map.Entry) (o1)).getValue()) - .compareTo(((Map.Entry) (o2)).getValue()); - - } - }); - Map result = new LinkedHashMap(); - int index = 0; - for (Iterator it = list.iterator(); it.hasNext();) { - Map.Entry entry = (Map.Entry) it.next(); - - index++; - - result.put(entry.getKey(), entry.getValue()); - - if(index == topSize){ - break; - } - } - return result; - } - - /**返回权重*/ - public static String getKeywordList(String document, int size){ - Map wordsMap = Utilities.getWordFrequency(document, false, new DefaultTokenizer(), customStopWordsProvider); - Map resultMap = sortByValue(wordsMap, size); - return JSON.toJSONString(resultMap); - } - - /**返回权重*/ - public static String getKeywordList(String document){ - @SuppressWarnings("unchecked") - Map wordsMap = Utilities.getWordFrequency(document, false, new DefaultTokenizer(), customStopWordsProvider); - return JSON.toJSONString(wordsMap); - } - /**返回词列表和权重*/ - public static String getKeywordListWithOutWeight(String document, int size){ - Map wordsMap = Utilities.getWordFrequency(document, false, new DefaultTokenizer(), customStopWordsProvider); - Map resultMap = sortByValue(wordsMap, size); - List lists = new ArrayList<>(resultMap.keySet()); - Collections.sort(lists); - return JSON.toJSONString(lists); - } - - /**返回摘要信息*/ - public static String extractSummary(String document, int size){ - return simpleSummariser.summarise(document,size); - } - - public static void main(String[] args) { - String content = "한국어한국어한국어"; - System.out.println(content.length()); - String a = extractSummary(content,3); - System.out.println(a); - } - - /** 分词 */ - public static String splitWords(String document){ - Map wordsMap = Utilities.getWordFrequency(document, false, new DefaultTokenizer(), customStopWordsProvider); - StringBuffer sb = new StringBuffer(); - Set segmentList = wordsMap.keySet(); - for (String term:segmentList) { - sb.append(term); - } - return sb.toString(); - } - - -// public static void main(String [] args){ -// -// /* System.err.println(extractSummary("Malia Obamawas 10 years old and in the fifth grade when her father became president, and next week she's set to start a new chapter.   She's off to Harvard.   The 19-year-old is ending a gap year that sparked a national conversation about the trendand unfolded across multiple continents. Soon she is decamping for the venerable Ivy League school in Cambridge, Mass.   Harvard's dorms open to freshmen Tuesday, and classes begin Aug. 30. The university is a familiar place for Obama's alumni parents, who both graduated from Harvard Law School. It also is no stranger to celebrity students and is the alma mater of eight U.S. presidents. That President Barack Obama's friends and former administration officials hold faculty posts at Harvard means his daughter won't be entirely on her own. A Secret Service detail will ensure that too.   \"How time flies,\" said Anita McBride, a chief of staff for former first lady Laura Bush, whose daughters Barbara and Jenna first welcomed Michelle Obama and her daughters into the White Houseafter the 2008 election.   The White House florist had made bouquets for the Obama girls. The Bush daughters gave them the grand tour, teaching them how to slide down the banister in the solarium. The departing White House daughters also gave the Obama girls a friendly letter full of their well wishes and advice.   Tribune news services\tMalia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   Malia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   (Tribune news services)   \"Here's a girl who's grown up in the public eye and who's been able to maintain a normal, private life and make regular, everyday decisions about her education and life choices,\" McBride said.   \"She took advantage of a very interesting opportunity at a very unique time in her life, an in-between time in her life,\" she added. Delaying her Harvard start meant Malia Obama would arrive on campus with less visibility and pressure than had she started in 2016 during her father's final months in the Oval Office, added McBride, now with American University's School of Public Affairs.   Malia Obama's gap year coinciding with her family leaving the White House in January gave her time and space to unwind with her parents and sister. \"They had precious family time they were able to enjoy as the entire family was going through a transition,\" McBride said.   The Obamas moved into a home Washington's Kalorama neighborhood, letting Sasha Obama finish Sidwell Friends School, from which Malia Obama graduated in 2016. Sixteen-year-old Sasha will finish Sidwell in 2019.   Katherine Skiba\tMalia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   Malia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   (Katherine Skiba)   The Obamas announced in May 2016 that Malia Obama had been accepted to Harvard but was taking a gap year. Her 12 months of me time, according to news accounts, featured an extended trip last fall to Bolivia and Peru, a journey reportedly organized by a Boulder, Colo., company called Where There Be Dragons. Eva Vanek, director of admissions for the firm, declined to talk about Malia Obama but spoke generally about its gap-year and summer programs, saying they operated in 19 countries in Asia, Africa and South and Central America.   The aim is a cross-cultural, experiential education, Vanek said. That means no five-star hotels or fancy buses, but rather home stays with local families, volunteer work, trips on public buses and often, language immersion. The small-group trips \"aren't touristic. They aim to broaden students' perspectives about the world and themselves through these really intimate experiences,\" she said.   The goal is to let participants become \"competent travelers and more evolved humans,\" Vanek added.   Last February, Malia Obama started an internship with the Weinstein Co., an employee there said. It's a film and television production and distribution company founded by brothers Bob and Harvey Weinstein. She hit the Sundance Film Festival in January, was spotted in Aspen, Colo., in February, traveled in June with her parents and sister to Bali and rocked out with her younger sister in August at Chicago's Lollapalooza.   Because of her gap year, Malia Obama will join Harvard's Class of 2021, an exclusive group about to get an expensive education.   Harvard's tuition, fees, room and board run $65,509 for the upcoming school year, though many students get need-based financial aid. Only 5.4 percent of the 39,041 students who applied to be in the Class of 2020 were admitted: some 2,110 students. Altogether Harvard has about 6,700 undergraduates and 14,500 graduate and professional students.   The school boasts nearly 3,900 courses in 49 undergraduate fields of study, or \"concentrations.\" All freshmen must take Expository Writing 20, but otherwise there is no preset curriculum. Those admitted into her 2021 class are, by a slim majority of 50.9 percent, mostly nonwhite, according to university officials, who declined to comment on the former first daughter.   Soon she'll be able to stroll Harvard Yard, shop at the campus store called \"The COOP\" and perhaps take meals with other freshmen at Annenberg Hall, a high-ceiling dining hall that draws comparisons to the Great Hall in the Harry Potter series. And she'll hit the books. University officials tell students to budget up to $1,200 a year for textbooks.   The college experience is one the Bush daughters anticipated. As the Obama family prepared to leave the White House, they sent the two teens another letter, previewing life as a former president's kids.   \"Enjoy college. As most of the world knows, we did,\" they said in one passage. \"And you won't have the weight of the world on your young shoulders anymore.",3)); -// System.err.println(extractSummary("I love china 中国",2));*/ -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HanLPUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HanLPUtils.java deleted file mode 100644 index d02cf9b..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HanLPUtils.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.bfd.mf.service.tools; - -/** - * Created by quanyou.chang@baifendian.com on 2016/8/8. - */ - -import com.alibaba.fastjson.JSON; -import com.hankcs.hanlp.HanLP; -import com.hankcs.hanlp.corpus.document.sentence.Sentence; -import com.hankcs.hanlp.corpus.tag.Nature; -import com.hankcs.hanlp.model.perceptron.PerceptronLexicalAnalyzer; -import com.hankcs.hanlp.seg.Segment; -import com.hankcs.hanlp.seg.common.Term; -import com.hankcs.hanlp.summary.TextRankKeyword; - -import java.io.IOException; -import java.util.*; - -/** - * description:HanLP Process For KeyWords And Abstract - */ -public class HanLPUtils { - - private static Map puntuationMap = new HashMap(); - - static{ - puntuationMap.put(":", ":"); - puntuationMap.put(",", ","); - puntuationMap.put(";", ";"); - puntuationMap.put("?", "?"); - puntuationMap.put("。", "."); - - } - - private static TextRankKeyword textRankKeyword = new TextRankKeyword(); - private static PerceptronLexicalAnalyzer analyzer; - - public static void initAnalyzer(){ - try { - analyzer = new PerceptronLexicalAnalyzer("/opt/data/nlp/hanlp/data/model/perceptron/pku199801/cws.bin", HanLP.Config.PerceptronPOSModelPath,HanLP.Config.PerceptronNERModelPath); - } catch (IOException e) { - e.printStackTrace(); - } - } - - /**返回权重*/ - public static String getKeywordList(String document, int size){ - Map wordsMap = textRankKeyword.getTermAndRank(document, Integer.valueOf(size)); - return JSON.toJSONString(wordsMap); - } - - public static String getKeywordList(String document){ - Map wordsMap = textRankKeyword.getTermAndRank(document); - return JSON.toJSONString(wordsMap); - } - /**返回摘要信息*/ - public static String extractSummary(String document, int size){ - StringBuffer sb = new StringBuffer(); - List sentenceList = HanLP.extractSummary(document, size); - for (String sentence:sentenceList){ - sb.append(sentence).append("。"); - } - return sb.toString(); - } - - public static String splitWords(String document){ - StringBuffer sb = new StringBuffer(); - //1:对标点符号进行中英文替换 - for (Map.Entry entry : puntuationMap.entrySet()){ - if(document.contains(entry.getKey())){ - document = document.replaceAll(entry.getKey(),entry.getValue()); - } - } - List segmentList = HanLP.segment(document); - for (Term term:segmentList) { - if( DataTypeSelectUtils.getStopDictSets().contains(term.word) ||DataTypeSelectUtils.getPosTagDictSets().contains(term.nature)) - continue; - sb.append(term.word); - } - return sb.toString(); - } - // ns为地名识别 - public static List placeRecognize(String[] sentences){ - Segment segment = HanLP.newSegment().enablePlaceRecognize(true); - Set placeSet = new HashSet<>(); - for (String sentence : sentences) - { - List termList = segment.seg(sentence); - termList.forEach(term ->{ - if(term.nature.toString().equals(Nature.ns.toString())){ - placeSet.add(term.word); - } - }); - } - return new ArrayList<>(placeSet); - } - - public static List placeRecognizeWithCws(String[] sentences){ - Set placeSet = new HashSet<>(); - try { - for (String sentence : sentences) { - Sentence termList = analyzer.analyze(sentence); - termList.forEach(term -> { - if (term.getLabel().equals(Nature.ns.toString())) { - placeSet.add(term.getValue()); - } - }); - } - }catch(Exception e){ - e.printStackTrace(); - } - return new ArrayList(placeSet); - } - -// public static void main(String [] args){ -// /* System.err.println(System.getenv()); -// String HANLP_ROOT = System.getenv("HANLP_ROOT"); -// System.err.println(HANLP_ROOT); -// HanLP.Config -// String content = "产业园"; -// List ns = placeRecognize(new String[]{content}); -// ns.forEach(nature->System.err.println(nature)); -// */ -//// String content = "马云的重大宣布,沸腾了北京 沸腾了全中国!"; -//// List ns = placeRecognize(new String[]{content}); -//// ns.forEach(nature->System.err.println(nature)); -//// JSONObject jsonObject = new JSONObject(); -// // parseListBrand(jsonObject,"护肤类-唇部润肤/唇部护理-唇膜-香奈儿(Chanel)"); -// -// /* String str = getKeywordList( -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。" + -// "" + -// "" + -// "" + -// "" + -// "" + -// "" + -// "",15); -// -// -// System.out.println(str); -// -// System.out.println( MfMD5Util.GetMD5Code(DataProcessUtils.StringFilter(HanLPUtils.splitWords("马云的重大宣布,沸腾了北京 沸腾了全中国!")))); -// System.out.println( MfMD5Util.GetMD5Code(DataProcessUtils.StringFilter(HanLPUtils.splitWords("冠农品牌+华糖云商”强强联合打造红色产业航母")))); -// -// System.out.println(HanLP.segment( "\t\n" + -// "惨烈!上海某国有大行分行走了800人!银行为啥留不住人了?")); -// System.err.println(extractSummary("#警方资讯# 【和平分局在沈阳万科成立驻企警务工作室】5月16日上午,和平分局授予沈阳万科“沈阳市公安局和平分局警企共建单位”,在沈阳万科成立驻企警务工作室,派驻助企民警并聘请沈阳万科总经理肖劲为警风警纪监督员。",3)); -// System.err.println(HanLPUtils.getKeywordList("Malia Obamawas 10 years old and in the fifth grade when her father became president, and next week she's set to start a new chapter.   She's off to Harvard.   The 19-year-old is ending a gap year that sparked a national conversation about the trendand unfolded across multiple continents. Soon she is decamping for the venerable Ivy League school in Cambridge, Mass.   Harvard's dorms open to freshmen Tuesday, and classes begin Aug. 30. The university is a familiar place for Obama's alumni parents, who both graduated from Harvard Law School. It also is no stranger to celebrity students and is the alma mater of eight U.S. presidents. That President Barack Obama's friends and former administration officials hold faculty posts at Harvard means his daughter won't be entirely on her own. A Secret Service detail will ensure that too.   \"How time flies,\" said Anita McBride, a chief of staff for former first lady Laura Bush, whose daughters Barbara and Jenna first welcomed Michelle Obama and her daughters into the White Houseafter the 2008 election.   The White House florist had made bouquets for the Obama girls. The Bush daughters gave them the grand tour, teaching them how to slide down the banister in the solarium. The departing White House daughters also gave the Obama girls a friendly letter full of their well wishes and advice.   Tribune news services\tMalia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   Malia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   (Tribune news services)   \"Here's a girl who's grown up in the public eye and who's been able to maintain a normal, private life and make regular, everyday decisions about her education and life choices,\" McBride said.   \"She took advantage of a very interesting opportunity at a very unique time in her life, an in-between time in her life,\" she added. Delaying her Harvard start meant Malia Obama would arrive on campus with less visibility and pressure than had she started in 2016 during her father's final months in the Oval Office, added McBride, now with American University's School of Public Affairs.   Malia Obama's gap year coinciding with her family leaving the White House in January gave her time and space to unwind with her parents and sister. \"They had precious family time they were able to enjoy as the entire family was going through a transition,\" McBride said.   The Obamas moved into a home Washington's Kalorama neighborhood, letting Sasha Obama finish Sidwell Friends School, from which Malia Obama graduated in 2016. Sixteen-year-old Sasha will finish Sidwell in 2019.   Katherine Skiba\tMalia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   Malia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   (Katherine Skiba)   The Obamas announced in May 2016 that Malia Obama had been accepted to Harvard but was taking a gap year. Her 12 months of me time, according to news accounts, featured an extended trip last fall to Bolivia and Peru, a journey reportedly organized by a Boulder, Colo., company called Where There Be Dragons. Eva Vanek, director of admissions for the firm, declined to talk about Malia Obama but spoke generally about its gap-year and summer programs, saying they operated in 19 countries in Asia, Africa and South and Central America.   The aim is a cross-cultural, experiential education, Vanek said. That means no five-star hotels or fancy buses, but rather home stays with local families, volunteer work, trips on public buses and often, language immersion. The small-group trips \"aren't touristic. They aim to broaden students' perspectives about the world and themselves through these really intimate experiences,\" she said.   The goal is to let participants become \"competent travelers and more evolved humans,\" Vanek added.   Last February, Malia Obama started an internship with the Weinstein Co., an employee there said. It's a film and television production and distribution company founded by brothers Bob and Harvey Weinstein. She hit the Sundance Film Festival in January, was spotted in Aspen, Colo., in February, traveled in June with her parents and sister to Bali and rocked out with her younger sister in August at Chicago's Lollapalooza.   Because of her gap year, Malia Obama will join Harvard's Class of 2021, an exclusive group about to get an expensive education.   Harvard's tuition, fees, room and board run $65,509 for the upcoming school year, though many students get need-based financial aid. Only 5.4 percent of the 39,041 students who applied to be in the Class of 2020 were admitted: some 2,110 students. Altogether Harvard has about 6,700 undergraduates and 14,500 graduate and professional students.   The school boasts nearly 3,900 courses in 49 undergraduate fields of study, or \"concentrations.\" All freshmen must take Expository Writing 20, but otherwise there is no preset curriculum. Those admitted into her 2021 class are, by a slim majority of 50.9 percent, mostly nonwhite, according to university officials, who declined to comment on the former first daughter.   Soon she'll be able to stroll Harvard Yard, shop at the campus store called \"The COOP\" and perhaps take meals with other freshmen at Annenberg Hall, a high-ceiling dining hall that draws comparisons to the Great Hall in the Harry Potter series. And she'll hit the books. University officials tell students to budget up to $1,200 a year for textbooks.   The college experience is one the Bush daughters anticipated. As the Obama family prepared to leave the White House, they sent the two teens another letter, previewing life as a former president's kids.   \"Enjoy college. As most of the world knows, we did,\" they said in one passage. \"And you won't have the weight of the world on your young shoulders anymore.",5)); -// -// System.err.println(HanLP.extractPhrase("Malia Obamawas 10 years old and in the fifth grade when her father became president, and next week she's set to start a new chapter.   She's off to Harvard.   The 19-year-old is ending a gap year that sparked a national conversation about the trendand unfolded across multiple continents. Soon she is decamping for the venerable Ivy League school in Cambridge, Mass.   Harvard's dorms open to freshmen Tuesday, and classes begin Aug. 30. The university is a familiar place for Obama's alumni parents, who both graduated from Harvard Law School. It also is no stranger to celebrity students and is the alma mater of eight U.S. presidents. That President Barack Obama's friends and former administration officials hold faculty posts at Harvard means his daughter won't be entirely on her own. A Secret Service detail will ensure that too.   \"How time flies,\" said Anita McBride, a chief of staff for former first lady Laura Bush, whose daughters Barbara and Jenna first welcomed Michelle Obama and her daughters into the White Houseafter the 2008 election.   The White House florist had made bouquets for the Obama girls. The Bush daughters gave them the grand tour, teaching them how to slide down the banister in the solarium. The departing White House daughters also gave the Obama girls a friendly letter full of their well wishes and advice.   Tribune news services\tMalia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   Malia Obama's gap year is truly taking shape.   Starting next month, the 18-year-old daughter of former President Barack Obamaand Michelle Obama who graduated from Sidwell Friends last May but won't attend Harvard University until fall will intern for Hollywood heavyweight Harvey Weinsteinin the...   (Tribune news services)   \"Here's a girl who's grown up in the public eye and who's been able to maintain a normal, private life and make regular, everyday decisions about her education and life choices,\" McBride said.   \"She took advantage of a very interesting opportunity at a very unique time in her life, an in-between time in her life,\" she added. Delaying her Harvard start meant Malia Obama would arrive on campus with less visibility and pressure than had she started in 2016 during her father's final months in the Oval Office, added McBride, now with American University's School of Public Affairs.   Malia Obama's gap year coinciding with her family leaving the White House in January gave her time and space to unwind with her parents and sister. \"They had precious family time they were able to enjoy as the entire family was going through a transition,\" McBride said.   The Obamas moved into a home Washington's Kalorama neighborhood, letting Sasha Obama finish Sidwell Friends School, from which Malia Obama graduated in 2016. Sixteen-year-old Sasha will finish Sidwell in 2019.   Katherine Skiba\tMalia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   Malia Obama will take a gap year after graduating from high school and then attend Harvard University in the fall of 2017, the White House said Sunday, a decision that frees her from the scrutiny of arriving on campus while her father is still president.Obama, 17, the older of the president's two...   (Katherine Skiba)   The Obamas announced in May 2016 that Malia Obama had been accepted to Harvard but was taking a gap year. Her 12 months of me time, according to news accounts, featured an extended trip last fall to Bolivia and Peru, a journey reportedly organized by a Boulder, Colo., company called Where There Be Dragons. Eva Vanek, director of admissions for the firm, declined to talk about Malia Obama but spoke generally about its gap-year and summer programs, saying they operated in 19 countries in Asia, Africa and South and Central America.   The aim is a cross-cultural, experiential education, Vanek said. That means no five-star hotels or fancy buses, but rather home stays with local families, volunteer work, trips on public buses and often, language immersion. The small-group trips \"aren't touristic. They aim to broaden students' perspectives about the world and themselves through these really intimate experiences,\" she said.   The goal is to let participants become \"competent travelers and more evolved humans,\" Vanek added.   Last February, Malia Obama started an internship with the Weinstein Co., an employee there said. It's a film and television production and distribution company founded by brothers Bob and Harvey Weinstein. She hit the Sundance Film Festival in January, was spotted in Aspen, Colo., in February, traveled in June with her parents and sister to Bali and rocked out with her younger sister in August at Chicago's Lollapalooza.   Because of her gap year, Malia Obama will join Harvard's Class of 2021, an exclusive group about to get an expensive education.   Harvard's tuition, fees, room and board run $65,509 for the upcoming school year, though many students get need-based financial aid. Only 5.4 percent of the 39,041 students who applied to be in the Class of 2020 were admitted: some 2,110 students. Altogether Harvard has about 6,700 undergraduates and 14,500 graduate and professional students.   The school boasts nearly 3,900 courses in 49 undergraduate fields of study, or \"concentrations.\" All freshmen must take Expository Writing 20, but otherwise there is no preset curriculum. Those admitted into her 2021 class are, by a slim majority of 50.9 percent, mostly nonwhite, according to university officials, who declined to comment on the former first daughter.   Soon she'll be able to stroll Harvard Yard, shop at the campus store called \"The COOP\" and perhaps take meals with other freshmen at Annenberg Hall, a high-ceiling dining hall that draws comparisons to the Great Hall in the Harry Potter series. And she'll hit the books. University officials tell students to budget up to $1,200 a year for textbooks.   The college experience is one the Bush daughters anticipated. As the Obama family prepared to leave the White House, they sent the two teens another letter, previewing life as a former president's kids.   \"Enjoy college. As most of the world knows, we did,\" they said in one passage. \"And you won't have the weight of the world on your young shoulders anymore.",1)); -//*/ -// } - -// public static void parseListBrand(JSONObject jsonObject, String listBrand) { -// if (StringUtils.isNotEmpty(listBrand)) { -// int a = listBrand.lastIndexOf("-"); -// String brandList = listBrand.substring(0,a); -// jsonObject.put(ESConstant.BRAND_LIST,brandList); -// System.out.println(brandList); -// } -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HttpClientUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HttpClientUtil.java deleted file mode 100644 index 93605c8..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/HttpClientUtil.java +++ /dev/null @@ -1,221 +0,0 @@ -package com.bfd.mf.service.tools; - -import com.alibaba.fastjson.JSON; -import org.apache.http.HttpEntity; -import org.apache.http.NameValuePair; -import org.apache.http.client.config.RequestConfig; -import org.apache.http.client.entity.UrlEncodedFormEntity; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClientBuilder; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.message.BasicNameValuePair; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; -import java.net.URI; -import java.nio.charset.Charset; -import java.util.*; - - -/** - * httpclient 工具类,提供get,post两类请求方法 - * - * @author BFD-yudong.chen - * - */ -public class HttpClientUtil { - private static final Logger logger = LoggerFactory.getLogger(HttpClientUtil.class); - - private static CloseableHttpClient httpclient = HttpClients.createDefault(); - - public static int requestTimeOut = 5000; - - /** - * - */ - public static ArrayList builderParams(Map param) { - ArrayList params = new ArrayList(); - for (String key : param.keySet()) { - params.add(new BasicNameValuePair(key, param.get(key).toString())); - } - return params; - } - - /** - * - */ - public static Map httpGet(String url, Map param, HashMap headers) { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - Map result = new HashMap(); - try { - RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(requestTimeOut).setConnectTimeout(requestTimeOut).build(); - // 创建httpget - HttpGet httpget = new HttpGet(url); - List params = builderParams(param); - - String str = EntityUtils.toString(new UrlEncodedFormEntity(params,Charset.forName("UTF-8"))); - if(!"".equals(str)){ - httpget.setURI(new URI(httpget.getURI().toString() + "?" + str)); - } - //System.out.println("executing request " + httpget.getURI()); - for(String key: headers.keySet()){ - httpget.setHeader(key,headers.get(key).toString()); - } - httpget.setConfig(requestConfig); - // 执行get请求 - CloseableHttpResponse response = httpclient.execute(httpget); - try { - // 获取响应实体 - HttpEntity entity = response.getEntity(); - // 响应状 - //System.out.println(response.getStatusLine()); - result.put("code", response.getStatusLine().getStatusCode()); - if (entity != null) { - String content = EntityUtils.toString(entity); - //System.out.println(content); -// content = content.replace(" ", ""); - result.put("entity",content); - } - } finally { - response.close(); - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - try { - httpclient.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - return result; - } - - public static String httpPost(String url, List> param) { - CloseableHttpClient httpclient = HttpClientBuilder.create().build(); - HttpPost httppost = new HttpPost(url); - StringEntity strEntity; - String resultContent = ""; - try { - strEntity = new StringEntity(JSON.toJSONString(param),Charset.forName("UTF-8")); - strEntity.setContentEncoding("UTF-8"); - strEntity.setContentType("application/json"); - httppost.setHeader("Content-type","application/json; charset=utf-8"); - httppost.setHeader("Accept","application/json"); - httppost.setEntity(strEntity); - CloseableHttpResponse response = httpclient.execute(httppost); - try { - HttpEntity entity = response.getEntity(); - if (entity != null) { - String content = EntityUtils.toString(entity); - resultContent = content ; - } - } finally { - response.close(); - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - try { - httpclient.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } - return resultContent; - } - - public static String httpPost(String url, Map param) { - CloseableHttpClient httpclient = HttpClientBuilder.create().build(); - HttpPost httppost = new HttpPost(url); - StringEntity strEntity; - String resultContent = ""; - try { - strEntity = new StringEntity(JSON.toJSONString(param),Charset.forName("UTF-8")); - strEntity.setContentEncoding("UTF-8"); - strEntity.setContentType("application/json"); - httppost.setHeader("Content-type","application/json; charset=utf-8"); - httppost.setHeader("Accept","application/json"); - httppost.setEntity(strEntity); - CloseableHttpResponse response = httpclient.execute(httppost); - try { - HttpEntity entity = response.getEntity(); - if (entity != null) { - String content = EntityUtils.toString(entity); - resultContent = content ; - } - } finally { - response.close(); - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - try { - httpclient.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } - return resultContent; - } - - public static String httpPost(String url, Vector param) { - CloseableHttpClient httpclient = HttpClientBuilder.create().build(); - HttpPost httppost = new HttpPost(url); - StringEntity strEntity; - String resultContent = ""; - try { - - strEntity = new StringEntity(param.toString(),Charset.forName("UTF-8")); - strEntity.setContentEncoding("UTF-8"); - strEntity.setContentType("application/json"); - httppost.setHeader("Content-type","application/json; charset=utf-8"); - httppost.setHeader("Accept","application/json"); - httppost.setEntity(strEntity); - CloseableHttpResponse response = httpclient.execute(httppost); - try { - HttpEntity entity = response.getEntity(); - if (entity != null) { - String content = EntityUtils.toString(entity); - resultContent = content ; - } - } finally { - response.close(); - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - try { - httpclient.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } - return resultContent; - } - -// public static void main(String[] args) { -// HashMap headers = new HashMap(); -//// headers.put("Accpet", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"); -//// headers.put("Accept-Encoding", "gzip, deflate, br"); -//// headers.put("Accept-Language", "zh-CN,zh;q=0.9"); -//// headers.put("Cache-Control", "max-age=0"); -//// headers.put("Connection", "keep-alive"); -////// headers.put("DNT", 1); -//// headers.put("Referer", "https://lf.meituan.com/s/%E9%A9%BF%E5%AE%B6365/"); -//// headers.put("Host", "lf.meituan.com"); -// headers.put("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36"); -//// headers.put("Upgrade-Insecure-Requests", 1); -//// headers.put("Cookie", "xhs_spses.5dde=*;Hm_lvt_9df7d19786b04345ae62033bd17f6278=1545035206,1545035398,1545097729,1545097841;Hm_lvt_d0ae755ac51e3c5ff9b1596b0c09c826=1545035206,1545035398,1545097730,1545097841;xhs_spid.5dde=ca9ad206dbfe1683.1545097841.1.1545097844.1545097841.b661d74e-3a5a-423f-81b2-ce5784118e43;xhsTrackerId=8e5d8691-35bc-4072-c06f-69c2b9ba5106;Hm_lpvt_d0ae755ac51e3c5ff9b1596b0c09c826=1545097841;xhsuid=4emQ9P7LMXW66bQn;beaker.session.id=a2e01d7483b2f22a2c5bfd04b9ff5f51e4cabafbgAJ9cQEoVQNfaWRxAlUgYTA5MTk5YmRlMTAzNDUzYzlmOTEzODNiYmZmNGM1OWRxA1UOX2FjY2Vzc2VkX3RpbWVxBEdB1wYUnFUNPVUOX2NyZWF0aW9uX3RpbWVxBUdB1wYUnFUNOXUu;extra_exp_ids=;ANTI=db01a13120|1545098440|b919656933;Hm_lpvt_9df7d19786b04345ae62033bd17f6278=1545097841;"); -// HttpClientUtil.httpGet("https://lf.meituan.com/s/%E9%A9%BF%E5%AE%B6365/", new HashMap(), headers); -// //http://rule.sq.baifendian.com/wordcloud -// HttpClientUtil.httpPost("http://rule.sq.baifendian.com/wordcloud",headers); -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/JsonUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/JsonUtils.java deleted file mode 100644 index ab8f2d5..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/JsonUtils.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.bfd.mf.service.tools; - -import com.fasterxml.jackson.core.JsonFactory; -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.SerializationFeature; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import java.util.List; -import java.util.Map; - -public class JsonUtils { - - private static final Log log = LogFactory.getLog(JsonUtils.class); - - private static JsonFactory _jsonFactory = null; - static { - if (_jsonFactory == null) { - _jsonFactory = new JsonFactory(); - _jsonFactory.enable(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS); - _jsonFactory.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true); - } - } - - public static String toJSONString(Object object) { - // return JSON.toJSONString(object); - ObjectMapper om = new ObjectMapper(_jsonFactory); - try { - om.configure(SerializationFeature.WRITE_NULL_MAP_VALUES, false); - return om.writeValueAsString(object); - } catch (Exception e) { - log.warn("to json string exception, will use fastjson to parse", e); - } - return null; - } - - public static Object parseObject(String str) throws Exception { - ObjectMapper om = new ObjectMapper(_jsonFactory); - return om.readValue(str.getBytes(), Object.class); - } - - public static Object parseObjectNoException(String str) { - Object o=null; - try { - o = parseObject(str); - } catch (Exception e) { - log.error("parse str to json error"+str,e); - o=null; - } - return o; - } - - @SuppressWarnings("unchecked") - public static Map parseMapNoException(String str) { - Object o=null; - try { - o = parseObject(str); - } catch (Exception e) { - log.error("parse str to json error"+str,e); - o=null; - return null; - } - - Map m=null; - try { - m = (Map)o; - } catch (Exception e) { - log.error("parse jsonobject to map error"+m,e); - return null; - } - return m; - } - - public static Object parse(String str) throws Exception { - return parseObject(str); - } - - @SuppressWarnings("unchecked") - public static List parseArray(String str) throws Exception { - ObjectMapper om = new ObjectMapper(_jsonFactory); - return (List) om.readValue(str.getBytes(), Object.class); - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadExcel.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadExcel.java deleted file mode 100644 index 022d0cb..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadExcel.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.bfd.mf.service.tools; - -public class LoadExcel { - public void loadExcelFile(){ } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadProperties.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadProperties.java deleted file mode 100644 index 28d2498..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/LoadProperties.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.io.*; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -public class LoadProperties { - - /** - * 配置文件路径 - */ - private static String CONFIG_FILE_PATH = "./conf.Properties"; - /** - * 保存配置文件信息的map - */ - public static HashMap map = new HashMap(); - - /** - * 创建配置对象,声明输入流对象,读取配置文件 - */ - public static void loadConfigFile(){ - try { - /***创建配置对象***/ - Properties properties = new Properties(); - /***声明输入流对象***/ - FileInputStream fis = new FileInputStream(CONFIG_FILE_PATH); - BufferedReader bf = new BufferedReader(new InputStreamReader(fis,"UTF-8")); - /***加载配置文件***/ - properties.load(bf); - /***关闭流***/ - fis.close(); - /***创建枚举对象***/ - Enumeration enu = properties.keys(); - while(enu.hasMoreElements()){ - String key = (String) enu.nextElement(); - String value = properties.getProperty(key); - - map.put(key, value); - System.out.println("打印配置文件信息:\n"+key+" -- "+value+"\n"); - } - //读取 - //readFile(); - System.out.println("配置文件加载完成!"); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - - public static Map getValue(String keySuffix){ - Map configParams = new HashMap(); - for(String configkey : map.keySet()){ - if(configkey.startsWith(keySuffix)){ - String configValue = map.get(configkey); - configkey = configkey.substring(configkey.indexOf(keySuffix+".") + keySuffix.length() + 1); - configParams.put(configkey, configValue); - } - } - return configParams ; - } - - - public static void readFile(){ - - try{ - File commentF = new File("./comment"); - BufferedReader commentbr = new BufferedReader(new FileReader(commentF)); - String commentrow; - StringBuffer commentProperties = new StringBuffer(); - while((commentrow = commentbr.readLine())!=null) { - commentProperties.append(commentrow+"\n"); - } - map.put("es_comment", commentProperties.toString()); - commentbr.close(); - File contentF = new File("./content"); - BufferedReader contentbr = new BufferedReader(new FileReader(contentF)); - String contentrow; - StringBuffer contentProperties = new StringBuffer(); - while((contentrow = contentbr.readLine())!=null) { - contentProperties.append(contentrow+"\n"); - } - map.put("es_content", contentProperties.toString()); - contentbr.close(); - }catch(Exception e){ - e.printStackTrace(); - } - } - - -// public static void main(String[] args) { -// //loadConfigFile(); -// //System.out.println(getValue("JD")); -// //readFile(); -// //System.out.println(map.get("es_content")); -// -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/MfMD5Util.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/MfMD5Util.java deleted file mode 100644 index df93ea5..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/MfMD5Util.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -public class MfMD5Util { - - private final static String[] strDigits = {"0", "1", "2", "3", "4", "5", - "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"}; - - public MfMD5Util() { - } - - private static String byteToArrayString(byte bByte) { - int iRet = bByte; - // System.out.println("iRet="+iRet); - if (iRet < 0) { - iRet += 256; - } - int iD1 = iRet / 16; - int iD2 = iRet % 16; - return strDigits[iD1] + strDigits[iD2]; - } - - private static String byteToNum(byte bByte) { - int iRet = bByte; - System.out.println("iRet1=" + iRet); - if (iRet < 0) { - iRet += 256; - } - return String.valueOf(iRet); - } - - private static String byteToString(byte[] bByte) { - StringBuffer sBuffer = new StringBuffer(); - for (int i = 0; i < bByte.length; i++) { - sBuffer.append(byteToArrayString(bByte[i])); - } - return sBuffer.toString(); - } - - public static String GetMD5Code(String strObj) { - String resultString = null; - try { - resultString = new String(strObj); - MessageDigest md = MessageDigest.getInstance("MD5"); - resultString = byteToString(md.digest(strObj.getBytes())); - } catch (NoSuchAlgorithmException ex) { - ex.printStackTrace(); - } - return resultString; - } -} \ No newline at end of file diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/NlpUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/NlpUtils.java deleted file mode 100644 index 14f92e0..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/NlpUtils.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.bfd.mf.service.tools; - -import com.bfd.nlp.common.util.string.TStringUtils; -import org.apache.commons.lang3.StringUtils; - -/** - * Created by Changquanyou on 2017/9/11. - */ -public class NlpUtils { - - /** - 通过正则 匹配会有问题: 中文字符串中含有 英文符号;会识别成英文 - private static String reg_charset = "^[\\u4e00-\\u9fa5]*$"; - private static Pattern p = Pattern.compile(reg_charset); - */ - /**判断中英文*/ - public static boolean isChinese(String sentence){ - if(StringUtils.isEmpty(sentence)) - return false; - return CharUtil.isChinese(sentence); - } - - public static String getKeywordList(String document, int size){ - if(isChinese(document)) - return HanLPUtils.getKeywordList(document, size); - return EnLPUtils.getKeywordList(document, size); - } - - public static String getKeywordList(String document){ - if(isChinese(document)) - return HanLPUtils.getKeywordList(document); - return EnLPUtils.getKeywordList(document); - } - - public static String extractSummary(String document, int size){ - if(isChinese(document)) - return HanLPUtils.extractSummary(document,size); - return EnLPUtils.extractSummary(document, size); - } - - /** - * 跨语言的分词: - * 支持中文简体 和 英文 - * @FIXED - **/ - public static String splitWords(String document){ - String result; - if(CharUtil.isChinese(document)){ - result = HanLPUtils.splitWords(document); - }else{ - result = EnLPUtils.splitWords(document); - } - /** 分完词是空;就返回自己本身 */ - if(TStringUtils.isEmpty(result)) - return document; - return result; - } - -// public static void main(String[] args) { -// String splitTitle1 = splitWords("成长保CEO路小得:技术推动在线教育进入4.0时代"); -// // String splitTitle2 = splitWords("成长保CEO路小得:技术推动在线教育进入4.0时代"); -// // String filterTitle1= DataProcessUtils.StringFilter(splitTitle1); -// -// // String filterTitle2= DataProcessUtils.StringFilter(splitTitle2); -// String aaa = getKeywordList("Automatic Wrap-Around Labeler Machine (ALB-515)"); -// System.err.println(splitTitle1); -// // System.err.println(splitTitle2); -// System.err.println("aa:"+aaa); -// } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/PropertiesUtil.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/PropertiesUtil.java deleted file mode 100644 index db0bfb9..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/PropertiesUtil.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.io.*; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -/** - * properties文件读取 - * @author ruining.he - * */ -public class PropertiesUtil { - - @SuppressWarnings({ "rawtypes", "unchecked" }) - public static Map getProperties(String filePath){ - Properties properties=new Properties(); - try { - Reader reader = new InputStreamReader(new FileInputStream(new File(filePath)), "utf8"); - properties.load(reader); - return new HashMap(properties); - } catch (FileNotFoundException e) { - } catch (IOException e) { - } - return null; - } - -// public static void main(String[] args) { -// Map map = getProperties("E:\\BaiFenDian\\工作文档\\5月\\B版_develop\\test\\info-config"); -// for(String k:map.keySet()){ -// System.out.println(k + ":" + map.get(k)); -// } -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ReadExcelUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ReadExcelUtils.java deleted file mode 100644 index e459fa9..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ReadExcelUtils.java +++ /dev/null @@ -1,204 +0,0 @@ -package com.bfd.mf.service.tools; - -import org.apache.commons.lang.StringUtils; -import org.apache.poi.hssf.usermodel.HSSFWorkbook; -import org.apache.poi.ss.usermodel.Row; -import org.apache.poi.ss.usermodel.Sheet; -import org.apache.poi.ss.usermodel.Workbook; -import org.apache.poi.xssf.usermodel.XSSFWorkbook; - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class ReadExcelUtils { - - private static String KOL_EXCEL = "字段类型v_0.5(1).xlsx"; - - private static String HEAD_EXCEL = "SQ_head_field.xlsx"; - - private static final String EXCEL_XLS = "xls"; - - private static final String EXCEL_XLSX = "xlsx"; - - public static Map ebxnames = new HashMap(); - - public static Workbook getWorkbok(InputStream in,File file) throws IOException{ - Workbook wb = null; - if(file.getName().endsWith(EXCEL_XLS)){ //Excel 2003 - wb = new HSSFWorkbook(in); - }else if(file.getName().endsWith(EXCEL_XLSX)){ // Excel 2007/2010 - wb = new XSSFWorkbook(in); - } - return wb; - } - - - public static void checkExcelVaild(File file) throws Exception{ - if(!file.exists()){ - throw new Exception("文件不存在"); - } - if(!(file.isFile() && (file.getName().endsWith(EXCEL_XLS) || file.getName().endsWith(EXCEL_XLSX)))){ - throw new Exception("文件不是Excel"); - } - } - - - public static List readExcel() { - - try{ - File excelFile = new File(KOL_EXCEL); // 创建文件对象 - FileInputStream in = new FileInputStream(excelFile); // 文件流 - checkExcelVaild(excelFile); - Workbook workbook = getWorkbok(in,excelFile); - Sheet sheet = workbook.getSheetAt(0); - List sqlString = new ArrayList(); - - for (int rowNum = 2; rowNum <= sheet.getLastRowNum(); rowNum++) { - StringBuffer stringsql = new StringBuffer(); - stringsql.append("insert into field_info ("); - stringsql.append("esfieldName,weiboContentfieldName,ecContentfieldName,newsContentfieldName,bbsContentfieldName,") ; - stringsql.append("weiboCommentfieldName,ecCommentfieldName,newsCommentfieldName,bbsCommentfieldName) value ("); - Row hssfRow = sheet.getRow(rowNum); - if (hssfRow != null ) { - String esColName = ""; - if(hssfRow.getCell(1)!=null){ - esColName = hssfRow.getCell(1).getStringCellValue().trim(); - } - - String weibocontent = ""; - if(hssfRow.getCell(3)!=null){ - weibocontent = hssfRow.getCell(3).getStringCellValue().trim(); - } - - String eccontent = ""; - if(hssfRow.getCell(4)!=null){ - eccontent = hssfRow.getCell(4).getStringCellValue().trim(); - } - - String newscontent = ""; - if(hssfRow.getCell(5)!=null){ - newscontent = hssfRow.getCell(5).getStringCellValue().trim(); - } - - String bbscontent = ""; - if(hssfRow.getCell(6)!=null){ - bbscontent = hssfRow.getCell(6).getStringCellValue().trim(); - } - - String weibocomment = ""; - if(hssfRow.getCell(7)!=null){ - weibocomment = hssfRow.getCell(7).getStringCellValue().trim(); - } - - String eccomment = ""; - if(hssfRow.getCell(8)!=null){ - eccomment = hssfRow.getCell(8).getStringCellValue().trim(); - } - - String newscomment = ""; - if(hssfRow.getCell(9)!=null){ - newscomment = hssfRow.getCell(9).getStringCellValue().trim(); - } - - String bbscomment = ""; - if(hssfRow.getCell(10)!=null){ - bbscomment = hssfRow.getCell(10).getStringCellValue().trim(); - } - - if(StringUtils.isNotBlank(weibocontent) || StringUtils.isNotBlank(eccontent) || StringUtils.isNotBlank(newscontent) || StringUtils.isNotBlank(bbscontent) - || StringUtils.isNotBlank(weibocomment) || StringUtils.isNotBlank(eccomment) || StringUtils.isNotBlank(newscomment) || StringUtils.isNotBlank(bbscomment)){ - stringsql.append("'"+esColName+"',").append("'"+weibocontent+"',").append("'"+eccontent+"',").append("'"+newscontent+"',").append("'"+bbscontent+"',").append("'"+weibocomment+"',").append("'"+eccomment+"',").append("'"+newscomment+"',").append("'"+bbscomment).append("')"); - sqlString.add(stringsql.toString()); - System.out.println(stringsql.toString()); - } - - } - - - } - return sqlString ; - //exeBacthSql(sqlString); - - - }catch(Exception e){ - e.printStackTrace(); - } - - return null ; - - } - - - public static List readheadExcel() { - try{ - File excelFile = new File(HEAD_EXCEL); // 创建文件对象 - FileInputStream in = new FileInputStream(excelFile); // 文件流 - checkExcelVaild(excelFile); - Workbook workbook = getWorkbok(in,excelFile); - Sheet sheet = workbook.getSheetAt(0); - List sqlString = new ArrayList(); - for (int rowNum = 1; rowNum <= sheet.getLastRowNum(); rowNum++) { - StringBuffer stringsql = new StringBuffer(); - stringsql.append("insert into field_head_info ("); - stringsql.append("esfieldName,weiboContentfieldName,ecContentfieldName,newsContentfieldName,bbsContentfieldName") ; - stringsql.append(") value ("); - Row hssfRow = sheet.getRow(rowNum); - if (hssfRow != null ) { - String esColName = ""; - if(hssfRow.getCell(0)!=null){ - esColName = hssfRow.getCell(0).getStringCellValue().trim(); - } - String weibocontent = ""; - if(hssfRow.getCell(2)!=null){ - weibocontent = hssfRow.getCell(2).getStringCellValue().trim(); - } - String eccontent = ""; - if(hssfRow.getCell(3)!=null){ - eccontent = hssfRow.getCell(3).getStringCellValue().trim(); - } - String newscontent = ""; - if(hssfRow.getCell(4)!=null){ - newscontent = hssfRow.getCell(4).getStringCellValue().trim(); - } - String bbscontent = ""; - if(hssfRow.getCell(5)!=null){ - bbscontent = hssfRow.getCell(5).getStringCellValue().trim(); - } - if(StringUtils.isNotBlank(weibocontent) || StringUtils.isNotBlank(eccontent) || StringUtils.isNotBlank(newscontent) || StringUtils.isNotBlank(bbscontent)){ - stringsql.append("'"+esColName+"',").append("'"+weibocontent+"',").append("'"+eccontent+"',").append("'"+newscontent+"',").append("'"+bbscontent).append("')"); - sqlString.add(stringsql.toString()); - System.out.println(stringsql.toString()); - } - } - } - return sqlString ; - }catch(Exception e){ - e.printStackTrace(); - } - return null ; - } - - private static void exeBacthSql(List sqlCache){ - DBUtil.getInstance("").executeBatch(sqlCache); - } - - -// public static void main(String[] args) { -// DBUtil.init("./db.properties"); -// try { -// //List sqlCache = readExcel(); -// List sqlCache2 = readheadExcel(); -// DBUtil.getInstance("db_stat").executeBatch(sqlCache2); -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/RoundRobinJedisPool.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/RoundRobinJedisPool.java deleted file mode 100644 index ccf6396..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/RoundRobinJedisPool.java +++ /dev/null @@ -1,268 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

    - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

    - * http://www.apache.org/licenses/LICENSE-2.0 - *

    - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.service.tools; - -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Maps; -import com.google.common.collect.Sets; -import com.google.common.io.Closeables; -import com.wandoulabs.jodis.BoundedExponentialBackoffRetryUntilElapsed; -import com.wandoulabs.jodis.JedisResourcePool; -import org.apache.curator.framework.CuratorFramework; -import org.apache.curator.framework.CuratorFrameworkFactory; -import org.apache.curator.framework.imps.CuratorFrameworkState; -import org.apache.curator.framework.recipes.cache.ChildData; -import org.apache.curator.framework.recipes.cache.PathChildrenCache; -import org.apache.curator.framework.recipes.cache.PathChildrenCache.StartMode; -import org.apache.curator.framework.recipes.cache.PathChildrenCacheEvent; -import org.apache.curator.framework.recipes.cache.PathChildrenCacheListener; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import redis.clients.jedis.Jedis; -import redis.clients.jedis.JedisPool; -import redis.clients.jedis.JedisPoolConfig; -import redis.clients.jedis.exceptions.JedisException; - -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.concurrent.atomic.AtomicInteger; - -/** - * A round robin connection pool for connecting multiple codis proxies based on Jedis and Curator. - * - * @author Apache9 - */ -public class RoundRobinJedisPool implements JedisResourcePool { - - private static final Logger LOG = LoggerFactory.getLogger(RoundRobinJedisPool.class); - - private static final ObjectMapper MAPPER = new ObjectMapper(); - - private static final String JSON_NAME_CODIS_PROXY_ADDR = "addr"; - - private static final String JSON_NAME_CODIS_PROXY_STATE = "state"; - - private static final String CODIS_PROXY_STATE_ONLINE = "online"; - - private static final int CURATOR_RETRY_BASE_SLEEP_MS = 100; - - private static final int CURATOR_RETRY_MAX_SLEEP_MS = 30 * 10000; - - private static final int JEDIS_POOL_TIMEOUT_UNSET = -1; - - private static final ImmutableSet RESET_TYPES = Sets - .immutableEnumSet(PathChildrenCacheEvent.Type.CHILD_ADDED, - PathChildrenCacheEvent.Type.CHILD_UPDATED, - PathChildrenCacheEvent.Type.CHILD_REMOVED); - - private final CuratorFramework curatorClient; - - private final boolean closeCurator; - - private final PathChildrenCache watcher; - - private static final class PooledObject { - public final String addr; - - public final JedisPool pool; - - public PooledObject(String addr, JedisPool pool) { - this.addr = addr; - this.pool = pool; - } - - } - - private volatile ImmutableList pools = ImmutableList.of(); - - private final AtomicInteger nextIdx = new AtomicInteger(-1); - - private final JedisPoolConfig poolConfig; - - private final int timeout; - - /** - * Create a RoundRobinJedisPool with default timeout.

    We create a CuratorFramework with infinite retry number. - * If you do not like the behavior, use the other constructor that allow you pass a CuratorFramework created by - * yourself. - * - * @param zkAddr ZooKeeper connect string. e.g., "zk1:2181" - * @param zkSessionTimeoutMs ZooKeeper session timeout in ms - * @param zkPath the codis proxy dir on ZooKeeper. e.g., "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - * @see #RoundRobinJedisPool(String, int, String, JedisPoolConfig, int) - */ - public RoundRobinJedisPool(String zkAddr, int zkSessionTimeoutMs, String zkPath, - JedisPoolConfig poolConfig) { - this(zkAddr, zkSessionTimeoutMs, zkPath, poolConfig, JEDIS_POOL_TIMEOUT_UNSET); - } - - /** - * Create a RoundRobinJedisPool.

    We create a CuratorFramework with infinite retry number. If you do not like the - * behavior, use the other constructor that allow you pass a CuratorFramework created by yourself. - * - * @param zkAddr ZooKeeper connect string. e.g., "zk1:2181" - * @param zkSessionTimeoutMs ZooKeeper session timeout in ms - * @param zkPath the codis proxy dir on ZooKeeper. e.g., "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - * @param timeout timeout of JedisPool - * @see #RoundRobinJedisPool(CuratorFramework, boolean, String, JedisPoolConfig, int) - */ - public RoundRobinJedisPool(String zkAddr, int zkSessionTimeoutMs, String zkPath, - JedisPoolConfig poolConfig, int timeout) { - this(CuratorFrameworkFactory - .builder() - .connectString(zkAddr) - .sessionTimeoutMs(zkSessionTimeoutMs) - .retryPolicy( - new BoundedExponentialBackoffRetryUntilElapsed(CURATOR_RETRY_BASE_SLEEP_MS, - CURATOR_RETRY_MAX_SLEEP_MS, -1L)).build(), true, zkPath, - poolConfig, timeout); - } - - /** - * Create a RoundRobinJedisPool with default timeout. - * - * @param curatorClient We will start it if it has not started yet. - * @param closeCurator Whether to close the curatorClient passed in when close. - * @param zkPath the codis proxy dir on ZooKeeper. e.g. "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - */ - public RoundRobinJedisPool(CuratorFramework curatorClient, boolean closeCurator, String zkPath, - JedisPoolConfig poolConfig) { - this(curatorClient, closeCurator, zkPath, poolConfig, JEDIS_POOL_TIMEOUT_UNSET); - } - - /** - * Create a RoundRobinJedisPool. - * - * @param curatorClient We will start it if it has not started yet. - * @param closeCurator Whether to close the curatorClient passed in when close. - * @param zkPath the codis proxy dir on ZooKeeper. e.g. "/zk/codis/db_xxx/proxy" - * @param poolConfig same as JedisPool - * @param timeout timeout of JedisPool - */ - public RoundRobinJedisPool(CuratorFramework curatorClient, boolean closeCurator, String zkPath, - JedisPoolConfig poolConfig, int timeout) { - this.poolConfig = poolConfig; - this.timeout = timeout; - this.curatorClient = curatorClient; - this.closeCurator = closeCurator; - watcher = new PathChildrenCache(curatorClient, zkPath, true); - watcher.getListenable().addListener(new PathChildrenCacheListener() { - - public void childEvent(CuratorFramework client, PathChildrenCacheEvent event) - throws Exception { - StringBuilder sb = new StringBuilder("zookeeper event received: type=") - .append(event.getType()); - if (event.getData() != null) { - ChildData data = event.getData(); - sb.append(", path=").append(data.getPath()).append(", stat=") - .append(data.getStat()); - } - LOG.info(sb.toString()); - if (RESET_TYPES.contains(event.getType())) { - resetPools(); - } - } - }); - // we need to get the initial data so client must be started - if (curatorClient.getState() == CuratorFrameworkState.LATENT) { - curatorClient.start(); - } - try { - watcher.start(StartMode.BUILD_INITIAL_CACHE); - } catch (Exception e) { - throw new JedisException(e); - } - resetPools(); - } - - private void resetPools() { - ImmutableList pools = this.pools; - Map addr2Pool = Maps.newHashMapWithExpectedSize(pools.size()); - for (PooledObject pool : pools) { - addr2Pool.put(pool.addr, pool); - } - ImmutableList.Builder builder = ImmutableList.builder(); - for (ChildData childData : watcher.getCurrentData()) { - try { - JsonNode proxyInfo = MAPPER.readTree(childData.getData()); - if (!CODIS_PROXY_STATE_ONLINE.equals(proxyInfo.get(JSON_NAME_CODIS_PROXY_STATE) - .asText())) { - continue; - } - String addr = proxyInfo.get(JSON_NAME_CODIS_PROXY_ADDR).asText(); - PooledObject pool = addr2Pool.remove(addr); - if (pool == null) { - LOG.info("Add new proxy: " + addr); - String[] hostAndPort = addr.split(":"); - String host = hostAndPort[0]; - int port = Integer.parseInt(hostAndPort[1]); - if (timeout == JEDIS_POOL_TIMEOUT_UNSET) { - pool = new PooledObject(addr, new JedisPool(poolConfig, host, port)); - } else { - pool = new PooledObject(addr, - new JedisPool(poolConfig, host, port, timeout)); - } - } - builder.add(pool); - } catch (Exception e) { - LOG.warn("parse " + childData.getPath() + " failed", e); - } - } - this.pools = builder.build(); - for (PooledObject pool : addr2Pool.values()) { - LOG.info("Remove proxy: " + pool.addr); - pool.pool.close(); - } - } - - public Jedis getResource() { - ImmutableList pools = this.pools; - if (pools.isEmpty()) { - throw new JedisException("Proxy list empty"); - } - for (; ; ) { - int current = nextIdx.get(); - int next = current >= pools.size() - 1 ? 0 : current + 1; - if (nextIdx.compareAndSet(current, next)) { - return pools.get(next).pool.getResource(); - } - } - } - - public void close() { - try { - Closeables.close(watcher, true); - } catch (IOException e) { - LOG.error("IOException should not have been thrown", e); - } - if (closeCurator) { - curatorClient.close(); - } - List pools = this.pools; - this.pools = ImmutableList.of(); - for (PooledObject pool : pools) { - pool.pool.close(); - } - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ValueException.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ValueException.java deleted file mode 100644 index 64739b8..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/ValueException.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2016 Baifendian Corporation - *

    - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

    - * http://www.apache.org/licenses/LICENSE-2.0 - *

    - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.bfd.mf.service.tools; - -/** - * @author: EricLiutyy (Zheng Liu) - * @date: 16/8/11 20:17 - * @descirption: - */ -public class ValueException extends Exception { - public ValueException(String msg) { - super(msg); - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WeiboFilterUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WeiboFilterUtils.java deleted file mode 100644 index f7337be..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WeiboFilterUtils.java +++ /dev/null @@ -1,210 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.util.ArrayList; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -/** - * Created by Changquanyou on 2017/6/12. - * 微博数据 filter - * 1:去除 用户名 - * 2:去除 url - * 3:去除 表情 - * 4:去除 tag - */ -public class WeiboFilterUtils { - /** - * URL正则表达式 - */ - private static final Pattern urlPattern = Pattern.compile( - "(?:^|[\\W])((ht|f)tp(s?):\\/\\/|www\\.)" - + "(([\\w\\-]+\\.){1,}?([\\w\\-.~]+\\/?)*" - + "[\\p{Alnum}.,%_=?&#\\-+()\\[\\]\\*$~@!:/{};']*)", - Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); - private static final Pattern hashtagPattern = - Pattern.compile("#[^#]+#"); - - private static final Pattern emotionPattern = - Pattern.compile("\\[([^\\[\\]]+)\\]"); - - private static final Pattern usermentionPattern = - Pattern.compile("@[\u4e00-\u9fa5a-zA-Z0-9_-]{2,30}"); - /** - * 去掉文本中URLs - * @param text - * @return - */ - public static String removeURLs(String text){ - Matcher matcher; - String newTweet = text.trim(); - String cleanedText=""; - while(!newTweet.equals(cleanedText)){ - cleanedText=newTweet; - matcher = urlPattern.matcher(cleanedText); - newTweet = matcher.replaceAll(""); - newTweet =newTweet.trim(); - } - return cleanedText; - } - - /** - * 获得文本中URL列表 - * @param originalString - * @return - */ - private static List getURLs(String originalString){ - List urlsSet=new ArrayList(); - Matcher matcher = urlPattern.matcher(originalString); - while (matcher.find()) { - int matchStart = matcher.start(1); - int matchEnd = matcher.end(); - String tmpUrl=originalString.substring(matchStart,matchEnd); - urlsSet.add(tmpUrl); - // now you have the offsets of a URL match - originalString=originalString.replace(tmpUrl,""); - matcher = urlPattern.matcher(originalString); - } - return urlsSet; - } - /** - * Hashtag正则表达式 - */ -// private static final Pattern hashtagPattern = -// Pattern.compile("(?:^|\\s|[\\p{Punct}&&[^/]])(#[\\p{L}0-9-_]+)"); - - private static String removeHashtags(String text){ - Matcher matcher; - String newTweet = text.trim(); - String cleanedText=""; - while(!newTweet.equals(cleanedText)){ - cleanedText=newTweet; - matcher = hashtagPattern.matcher(cleanedText); - newTweet = matcher.replaceAll(""); - newTweet =newTweet.trim(); - } - return cleanedText; - } - - - /** - * 用户@正则表达式 - * 新浪微博中的用户名格式为是“4-30个字符,支持英文、数字、"_"或减号”, - * 也就是说,支持中文、字母、数字、下划线及减号,并且是4到30个字符(这里暂且认为汉字为一个字符) - * 那么在写匹配的表达式的时候就可以这么来写: @[\u4e00-\u9fa5a-zA-Z0-9_-]{4,30} - */ - // private static final Pattern usermentionPattern = -// Pattern.compile("(?:^|\\s|[\\p{Punct}&&[^/]])(@[\\p{L}0-9-_]+)"); - - public static String removeUserMentions(String text){ - Matcher matcher; - String newTweet = text.trim(); - String cleanedText=""; - while(!newTweet.equals(cleanedText)){ - cleanedText=newTweet; - matcher = usermentionPattern.matcher(cleanedText); - newTweet = matcher.replaceAll(""); - newTweet =newTweet.trim(); - } - return cleanedText; - } - - private static List getUsermentions(String originalString){ - List usermentionsSet=new ArrayList(); - Matcher matcher = usermentionPattern.matcher(originalString); - while (matcher.find()) { -// int matchStart = matcher.start(1); - int matchStart = matcher.start(); - int matchEnd = matcher.end(); - String tmpUsermention=originalString.substring(matchStart,matchEnd); - usermentionsSet.add(tmpUsermention); - originalString=originalString.replace(tmpUsermention,""); - matcher = usermentionPattern.matcher(originalString); - } - return usermentionsSet; - } - - public static String removeEmotion(String text){ - Matcher matcher; - String newTweet = text.trim(); - String cleanedText=""; - while(!newTweet.equals(cleanedText)){ - cleanedText=newTweet; - matcher = emotionPattern.matcher(cleanedText); - newTweet = matcher.replaceAll(""); - newTweet =newTweet.trim(); - } - return cleanedText; - } - - - /** - * 获取博文中提到的话题 - */ - public static List getHashtags(String originalString){ - List hashtagSet=new ArrayList(); - Matcher matcher = hashtagPattern.matcher(originalString); - while (matcher.find()) { -// int matchStart = matcher.start(1); - int matchStart = matcher.start(); - int matchEnd = matcher.end(); - String tmpHashtag=originalString.substring(matchStart,matchEnd); - hashtagSet.add(tmpHashtag); - originalString=originalString.replace(tmpHashtag,""); - matcher = hashtagPattern.matcher(originalString); - } - return hashtagSet; - } - - /** - * 获取博文中的表情 - */ - public static List getEmotion(String originalString){ - List usermentionsSet=new ArrayList(); - Matcher matcher = emotionPattern.matcher(originalString); - while (matcher.find()) { - int matchStart = matcher.start(); - int matchEnd = matcher.end(); - String tmpUsermention=originalString.substring(matchStart,matchEnd); - usermentionsSet.add(tmpUsermention); - originalString=originalString.replace(tmpUsermention,""); - matcher = emotionPattern.matcher(originalString); - } - return usermentionsSet; - } - -// public static void main(String [] args){ -// String t1= "#大数据#[赶火车]"; -// String t2= "#大数据#[dads][sasa][sasa]http://c.biancheng.net/cpp/view/7011.html"; -// String t3 = "接下来就是见证奇迹的时刻[跪了]你把这杯推到我面前是什么意思,全身上下每个毛孔都在拒绝,喝到墨水会不会秒变大章鱼![悲伤]我不听,这回墨水和锐澳墨水概念鸡尾酒得我亲自来倒给你喝!@RIO锐澳鸡尾酒 @天猫 #国潮来了# http://t.cn/EKINFJ0 http://t.cn/EKSLwxx "; -// System.out.println(removeHashtags(t1)); -// System.out.println(getEmotion(t2)); -// System.out.println(removeURLs(removeEmotion(t2))); -// -// -// System.out.println(getEmotion(t3)); -// System.out.println(getHashtags(t3)); -// -//// String ww = "@M鹿M 我在安慕希#奔跑吧#能量榜上为你打call啦,你就是最火力全开的奔跑兄弟! http://t.cn/RBS4Wzj安慕希奔跑... \n"; -//// System.err.println(ww); -//// System.err.println(removeUserMentions(removeURLs(removeEmotion(ww)))); -//// -//// ww= "做梦都想着来的那天在机场被安检大哥没收的几盒没喝上的安慕希…… http://t.cn/R0QMmol韩国·明洞 \n"; -//// System.err.println(removeUserMentions(removeURLs(removeEmotion(ww)))); -//// List terms = HanLP.segment(removeUserMentions(removeURLs(removeEmotion(ww)))); -//// for (Term term:terms -//// ) { -//// System.err.println(term.nature); -//// System.err.println(term); -//// } -//// List list = getHashtags("#aaaaa#aaaaaaaaaaa#bbbbbbbb#"); -//// list.forEach(tag->{ -//// System.err.println(tag); -//// }); -// } - - - - - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WriteMethod.java b/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WriteMethod.java deleted file mode 100644 index 194b420..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/tools/WriteMethod.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.bfd.mf.service.tools; - -import java.io.FileWriter; -import java.io.IOException; - -/** - * Created by BFD-229 on 2017/7/6. - */ -public class WriteMethod { - public static void writeMethod(String fileName, String json){ - try{ - FileWriter writer=new FileWriter(fileName,true); - writer.write(json+"\n"); - writer.close(); - } catch (IOException e) - { - e.printStackTrace(); - } - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/AvailcontentApiUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/AvailcontentApiUtils.java deleted file mode 100644 index 92e15a9..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/AvailcontentApiUtils.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.bfd.mf.service.utils; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.service.tools.HttpClientUtil; - -import java.util.HashMap; -import java.util.Map; - -/** - * 调用接口 获取数据的有效性 - */ -public class AvailcontentApiUtils { //http://rule.sq.baifendian.com/availcontent - public final static String apiUrl = "http://rule.sq.baifendian.com/availcontent" ; - - public static Integer post(String content) { - int postResult = 2; - try{ - Map param= new HashMap(); - param.put("content", content); - String result = HttpClientUtil.httpPost(apiUrl, param); - JSONObject jsonData = JSONObject.parseObject(result); - if(null != jsonData || !("").equals(jsonData)) { - Integer availability = Integer.parseInt(jsonData.get("availability").toString()); - postResult = availability; - } - }catch(Exception e){ - e.printStackTrace(); - } - return postResult; - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/HlkkwUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/HlkkwUtils.java deleted file mode 100644 index ac363c0..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/HlkkwUtils.java +++ /dev/null @@ -1,267 +0,0 @@ -package com.bfd.mf.service.utils; - - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.service.tools.*; -import com.hankcs.hanlp.HanLP; -import org.apache.commons.lang3.StringUtils; -import org.apache.log4j.Logger; - -import java.text.Collator; -import java.util.*; -import java.util.regex.Pattern; - -public class HlkkwUtils { - - private static final Logger LOG = Logger.getLogger(HlkkwUtils.class); - private static String placeUrl = "http://rule.sq.baifendian.com/nerplace"; - - public static List getHLKkeyword(String content, Map newmap){ - List hlKeyWord = new ArrayList(); - try{ - String words = NlpUtils.getKeywordList(content, 10) ; - JSONObject wordsJsonObject = JSONObject.parseObject(words); - Set stringSet = wordsJsonObject.keySet(); - stringSet = getKeyWord(stringSet); - hlKeyWord = new ArrayList<>(stringSet); - newmap.put("sysKeywords", words) ; - }catch(Exception e){ - e.printStackTrace(); - } - return hlKeyWord ; - } - - public static String getSysAbstract(String content){ - return NlpUtils.extractSummary(content, 3) ; - } - - public static List getPlace(String content, String title){ - List placeList = HanLPUtils.placeRecognizeWithCws(new String[]{content}); - //List placeList = new ArrayList<>(); - List hlanLpAndLTPList = null; - if(placeList != null && placeList.size() != 0) { - hlanLpAndLTPList = getLtpAndHanLpPlace(content, title , placeList); - }else{ - hlanLpAndLTPList = placeList; - } - if (!placeList.isEmpty()) { - return hlanLpAndLTPList ; - } - return hlanLpAndLTPList ; - } - - private static List getLtpAndHanLpPlace(String content, String title, List placeList){ - List ltpList = getLtpPlace(content,title); - List ltpAndHlanlpList = new ArrayList<>(); - if (placeList != null && ltpList != null) { - for (String word : placeList) { - if (ltpList.contains(word)) { - ltpAndHlanlpList.add(word); - } - } - return ltpAndHlanlpList; - }else{ - return placeList; - } - } - - private static List getLtpPlace(String content, String title) { - Map param= new HashMap(); - param.put("content", content); - param.put("title", title); -// String result = HttpClientUtil.httpPost("http://intrest.ner.mediaforce.cn/ner_ns", param); - String result = HttpClientUtil.httpPost(placeUrl, param); -// System.out.println(result); - if(StringUtils.isNotEmpty(result)) { - String[] ltpArray = result.split(" "); - List ltpList = Arrays.asList(ltpArray); - return ltpList; - }else{ - return new ArrayList<>(); - } - } - - /** - * 处理长文本 - */ - public static String processLongText(String title,String content, Map newmap ,String docType){ - String contentSimHash = ""; - try { - int titleSize = title.length(); - int contentSize = content.length(); - /**content includes title*/ - if(content.contains(title)){ - int beginIndex = (contentSize - 3 *titleSize)>0?3 *titleSize:contentSize; - int endIndex = (contentSize - 3 *titleSize)>0?(contentSize - 3 *titleSize):0; - int lastTitleIndex = content.lastIndexOf(title); - int firstTitleIndex = content.indexOf(title); - if(firstTitleIndex >=0 && firstTitleIndex < beginIndex) - content = content.replaceFirst(title,""); - if(lastTitleIndex >=0 && lastTitleIndex > firstTitleIndex && endIndex <= lastTitleIndex) - content = replaceLast(content,title,""); - } - List phraseLists = HanLP.extractPhrase(content, 50); - //LOG.info("[HlkkwUtils processLongText] phraseListsSize : "+phraseLists.size()); - /**@FIXED check if phrase list is empty*/ - if(phraseLists == null || phraseLists.size() == 0){ - List normalizeLists = new ArrayList<>(); - normalizeLists.add(System.nanoTime()+""); - normalizeLists.add(docType); - newmap.put("originalPhrase", JSON.toJSONString(normalizeLists)); - newmap.put("finalPhrase", JSON.toJSONString(normalizeLists)); - /*-1 标记 mark failed */ - newmap.put("phraseMark","-1"); - contentSimHash = MfMD5Util.GetMD5Code(JSON.toJSONString(normalizeLists)); - LOG.info("[processLongText method] could't extract phrase info,please checkout the docId "+newmap.get("docId")); - }else{ - newmap.put("originalPhrase", JSON.toJSONString(phraseLists)); - phraseLists = sortByTF(phraseLists,content,7,title); - /**sort by default order*/ - Collections.sort(phraseLists,new Comparator(){ - Collator clt= Collator.getInstance(); - @Override - public int compare(String o1, String o2) { - return clt.compare(o1, o2); - } - }); - String phraseStr = ""; - for (String str:phraseLists - ) { - phraseStr +=str; - } - newmap.put("finalPhrase", JSON.toJSONString(phraseLists)); - contentSimHash = MfMD5Util.GetMD5Code(phraseStr); - } - }catch(Exception e){ - e.printStackTrace(); - LOG.error("getHashByPhrase method is error {}",e); - contentSimHash = MfMD5Util.GetMD5Code(docType+"_"+System.nanoTime()); - } - return contentSimHash; - } - - public static String replaceLast(String str, String oldValue, String newValue) { - str = StringUtils.reverse(str); - str = str.replaceFirst(StringUtils.reverse(oldValue), StringUtils.reverse(newValue)); - str = StringUtils.reverse(str); - return str; - } - - - public static List sortByTF(List phraseLists,String content,int topPhraseNumber,String title){ - List lists = new ArrayList<>(); - int topNumber = 2; - int topIndex =0; - /**1:get top 2 phrase */ - for (String phrase:phraseLists) { - if(topIndex < topNumber){ - lists.add(phrase); - }else{ - break; - } - topIndex ++ ; - } - Map phraseMap = new TreeMap<>(); - for (String phrase:phraseLists) { - phraseMap.put(phrase,content.split(phrase).length -1); - } - List> list = new ArrayList<>(phraseMap.entrySet()); - - Collections.sort(list,new Comparator>() { - /**降序排列*/ - @Override - public int compare(Map.Entry o1, Map.Entry o2) { - return - o1.getValue().compareTo(o2.getValue()); - } - }); - int index =0; - for (Map.Entry e: list) { - /**出现在标题中的值;需要ignore;*/ - if(index < topPhraseNumber){ - // if(!title.contains(e.getKey())){ - lists.add(e.getKey()); - index ++; - // } - }else{ - break; - } - } - return lists; - } - - - public static Map initContentTag(Map newmap,String docType ,String content){ - newmap.put("contentTag","normal"); -// if(docType.equals("weibo")){ -// List hashTags = WeiboFilterUtils.getHashtags(content); -// if(!hashTags.isEmpty()){ -// newmap.put("hashTag",JSON.toJSONString(hashTags)); -// } -// List expression = WeiboFilterUtils.getEmotion(content); -// if(!expression.isEmpty()){ -// newmap.put("expression",JSON.toJSONString(expression)); -// } -// } - return newmap ; - } - - - /** - * 去掉特殊字符等不必要的数据 - */ - public static Set getKeyWord(Set set) { - Set resultSet = new HashSet(); - resultSet.addAll(set); - //String E1 = "[`~!@$%^&*()+=|{}':;',.<>/?~!@¥%……&*()——+|{}【】‘;:”“’。,、?]"; - String E1 = "[`~!#@$%^&*()+=|{}':;',.<>/?~!@¥%……&*()——+|{}【】‘;:”“’。,、?]"; - String E2 = "[a-zA-Z]";// 英文 - String E3 = "[0-9]";// 数字 - Pattern p = Pattern.compile(E1); - for (String s : set) { - if (s.length() == 1) { - if (s.matches(E2)) { - resultSet.remove(s); - continue; - } - if (s.matches(E3)) { - resultSet.remove(s); - continue; - } - if (s.equals("#")) { - resultSet.remove(s); - continue; - } - } - if (p.matcher(s).find()) { - resultSet.remove(s); - } - } - return resultSet; - } - -// public static void main(String[] args) { -// // System.out.println(getHLKkeyword("我从小看你长大#萌宠##王一博##可爱##治愈##动物保护# ​[憧憬][憧憬][憧憬],!&^*")); -// Map json = new HashMap(); -// json.put("docId", "1234"); -// processLongText("你好","我很好",json,"weibo"); -// System.out.println(json); -// -// } -//public static void main(String[] args) { -// String title = "香水收到了,是正品,味道好闻,价格实惠,物超所值,赞????????"; -// String content = "香水收到了,是正品,味道好闻,价格实惠,物超所值,赞????????"; -// Map map = new HashMap<>(); -// String docType = "item"; -// -// String regEx = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"; -// Pattern p = Pattern.compile(regEx); -// Matcher m = p.matcher(content); -// content = m.replaceAll("").trim(); // c5940d55aa06119ab2f40260f031955e -// //title = m.replaceAll("").trim(); -// -// String a = processLongText(title,content,map,docType); -// System.out.println(a); -// -//} -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/OpinionApiUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/OpinionApiUtils.java deleted file mode 100644 index 1efb738..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/OpinionApiUtils.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.bfd.mf.service.utils; - - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.service.tools.HttpClientUtil; -import org.apache.log4j.Logger; - -import java.util.*; - -/** - * content 中的 情感词提取 - */ -public class OpinionApiUtils { - private static final Logger logger = Logger.getLogger(OpinionApiUtils.class); - private static String sentimentUrl = "http://rule.sq.baifendian.com/sentiment_trigger"; - - public static List getOpinion(String content) { - List result = new ArrayList<>(); - try{ - Map param= new HashMap(); - param.put("content", content); - String resReuslt = HttpClientUtil.httpPost(sentimentUrl, param); - if(resReuslt == "" || "".equals(resReuslt)){ - Thread.sleep(3000); - resReuslt = HttpClientUtil.httpPost(sentimentUrl, param); - } - //System.out.println(" **** OpinionHttpClientUtils resReuslt = " + resReuslt); - JSONObject jsonData = JSONObject.parseObject(resReuslt); - //System.out.println("[OpinionHttpClientUtils] getOpinion 88888 : "+jsonData.get("sentiment_words")); - if(!jsonData.get("sentiment_words").toString().contains("[") && !jsonData.get("sentiment_words").toString().contains("]")){ - result.addAll(new HashSet<>(JSONArray.parseArray("[]", String.class))); - }else { - result.addAll(new HashSet<>(JSONArray.parseArray(jsonData.getJSONArray("sentiment_words").toJSONString(), String.class))); - } - }catch(Exception e){ - e.printStackTrace(); - logger.error("OpinionHttpClientUtils>>> getOpinion---content:"+content); - } - return result ; - - } - -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/SentimentApiUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/SentimentApiUtils.java deleted file mode 100644 index 10a185b..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/SentimentApiUtils.java +++ /dev/null @@ -1,156 +0,0 @@ -package com.bfd.mf.service.utils; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Vector; - -import com.bfd.crawler.utils.JsonUtils; -import com.bfd.mf.service.tools.HttpClientUtil; -import com.bfd.mf.service.tools.WriteMethod; -import org.apache.log4j.Logger; - -/** - * Bert 情感 - */ -public class SentimentApiUtils { - - private static final Logger LOG = Logger.getLogger(SentimentApiUtils.class); - - public final static String apiUrl = "http://172.18.1.166:15038/bertsentiment" ; - - public double getSentimentValue(String title){ - //long a = System.currentTimeMillis(); - String result = null; - List> lists = new ArrayList>(); - Map params = new HashMap(); - params.put("title", title); - params.put("summary", "很好"); - params.put("sentiment", "0"); - lists.add(params); - - try { - result = HttpClientUtil.httpPost(apiUrl, lists); - } catch (Exception e) { - e.printStackTrace(); - } - //System.out.println(result); - try { - List> results = (List>) JsonUtils.parseArray(result); - double score = Double.valueOf(results.get(0).get("sentiment").toString()); - long b = System.currentTimeMillis(); - // System.out.println(b-a); - return score ; - } catch (Exception e) { - e.printStackTrace(); - } - - return 0.0 ; - } - - public synchronized Vector getSentimentValue(Vector datas){ - Vector datanews = null ; - Vector resultV = null ; - try { - resultV = new Vector(); - if(datas.size() > 0){ - datanews = new Vector(datas); - datas.clear(); - List> results = new ArrayList<>(); - Map param ; - if(results.size() > 0){ - for(Map res : results){ - param = new HashMap(res); - for(Map.Entry entry : res.entrySet()){ - String mapKey = entry.getKey(); - Object mapValue = entry.getValue(); - if(mapKey.equals("title")){ - param.remove("title"); - } - - if(mapKey.equals("tittles")){ - param.put("title", mapValue); - param.remove("tittles"); - } - - if(mapKey.equals("contens")){ - param.put("content", mapValue); - param.remove("contens"); - } - - if(mapKey.equals("summary")){ - param.remove("summary"); - } - - if(mapKey.equals("sentiment")){ - param.put("sysSentiment", mapValue); - param.remove("sentiment"); - } - } - resultV.add(JsonUtils.toJSONString(param)); - } - } - } - return resultV ; - } catch (Exception e) { - e.printStackTrace(); - LOG.error("SentimentApiUtils>>> getSentimentValue data : "+datanews); - } - return resultV ; - } - -// public synchronized Vector getSentimentValue(Vector datas){ -// Vector datanews = null ; -// Vector resultV = null ; -// try { -// resultV = new Vector(); -// if(datas.size() > 0){ -// datanews = new Vector(datas); -// datas.clear(); -// List> results = new ArrayList<>(); -// String result = HttpClientUtil.httpPost(apiUrl, datanews); -// results = JsonUtils.parseArray(result); -// -// Map param ; -// if(results.size() > 0){ -// for(Map res : results){ -// param = new HashMap(res); -// for(Map.Entry entry : res.entrySet()){ -// String mapKey = entry.getKey(); -// Object mapValue = entry.getValue(); -// if(mapKey.equals("title")){ -// param.remove("title"); -// } -// -// if(mapKey.equals("tittles")){ -// param.put("title", mapValue); -// param.remove("tittles"); -// } -// -// if(mapKey.equals("contens")){ -// param.put("content", mapValue); -// param.remove("contens"); -// } -// -// if(mapKey.equals("summary")){ -// param.remove("summary"); -// } -// -// if(mapKey.equals("sentiment")){ -// param.put("sysSentiment", mapValue); -// param.remove("sentiment"); -// } -// } -// resultV.add(JsonUtils.toJSONString(param)); -// } -// } -// } -// return resultV ; -// } catch (Exception e) { -// e.printStackTrace(); -// LOG.error("SentimentApiUtils>>> getSentimentValue data : "+datanews); -// } -// return resultV ; -// } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/TransferclfApiUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/TransferclfApiUtils.java deleted file mode 100644 index 47a65be..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/TransferclfApiUtils.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.bfd.mf.service.utils; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.service.tools.HttpClientUtil; - -import java.util.HashMap; -import java.util.Map; - -/** - * 电商数据属性判断 - */ -public class TransferclfApiUtils { - - public final static String apiUrl = "http://rule.sq.baifendian.com/transferclf" ; - - public static String post(String content){ - Map datanews = new HashMap<>(); - datanews.put("content",content); - String result = HttpClientUtil.httpPost(apiUrl, datanews); - Map resultMap = JSONObject.parseObject(result); - return resultMap.get("result").toString(); - } -} diff --git a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/WordCloudApiUtils.java b/cl_stream_service/src/main/java/com/bfd/mf/service/utils/WordCloudApiUtils.java deleted file mode 100644 index cbcad13..0000000 --- a/cl_stream_service/src/main/java/com/bfd/mf/service/utils/WordCloudApiUtils.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.bfd.mf.service.utils; - -import com.alibaba.fastjson.JSONObject; -import com.bfd.mf.service.tools.HttpClientUtil; - -import java.util.HashMap; -import java.util.Map; - -public class WordCloudApiUtils { - public final static String apiUrl = "http://rule.sq.baifendian.com/wordcloud" ; - - public static String post(String content){ - Map datanews = new HashMap<>(); - datanews.put("content",content); - String result = HttpClientUtil.httpPost(apiUrl, datanews); - Map resultMap = JSONObject.parseObject(result); - // System.out.println(resultMap); - return resultMap.toString(); - } -} diff --git a/cl_stream_service/src/main/main.iml b/cl_stream_service/src/main/main.iml deleted file mode 100644 index 27c1ddb..0000000 --- a/cl_stream_service/src/main/main.iml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/cl_stream_service/src/main/resources/hanlp.properties b/cl_stream_service/src/main/resources/hanlp.properties deleted file mode 100644 index e7518b1..0000000 --- a/cl_stream_service/src/main/resources/hanlp.properties +++ /dev/null @@ -1,41 +0,0 @@ -#本配置文件中的路径的根目录,根目录+其他路径=完整路径(支持相对路径,请参考:https://github.com/hankcs/HanLP/pull/254) -#Windows用户请注意,路径分隔符统一使用/ -root=/opt/data/nlp/hanlp/ -#root=/Users/mountain/Documents/nlp/hanlp/ -#root = D:/opt/data/nlp/hanlp - -#好了,以上为唯一需要修改的部分,以下配置项按需反注释编辑。 - -#核心词典路径 -#CoreDictionaryPath=data/dictionary/CoreNatureDictionary.txt -#2元语法词典路径 -#BiGramDictionaryPath=data/dictionary/CoreNatureDictionary.ngram.txt -#自定义词典路径,用;隔开多个自定义词典,空格开头表示在同一个目录,使用“文件名 词性”形式则表示这个词典的词性默认是该词性。优先级递减。 -#所有词典统一使用UTF-8编码,每一行代表一个单词,格式遵从[单词] [词性A] [A的频次] [词性B] [B的频次] ... 如果不填词性则表示采用词典的默认词性。 -CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; 现代汉语补充词库.txt; 全国地名大全.txt ns; 人名词典.txt; 机构名词典.txt; 上海地名.txt ns;data/dictionary/person/nrf.txt nrf; -#停用词词典路径 -#CoreStopWordDictionaryPath=data/dictionary/stopwords.txt -#同义词词典路径 -#CoreSynonymDictionaryDictionaryPath=data/dictionary/synonym/CoreSynonym.txt -#人名词典路径 -#PersonDictionaryPath=data/dictionary/person/nr.txt -#人名词典转移矩阵路径 -#PersonDictionaryTrPath=data/dictionary/person/nr.tr.txt -#繁简词典根目录 -#tcDictionaryRoot=data/dictionary/tc -#HMM分词模型 -#HMMSegmentModelPath=data/model/segment/HMMSegmentModel.bin -#分词结果是否展示词性 -#ShowTermNature=true -#IO适配器,实现com.hankcs.hanlp.corpus.io.IIOAdapter接口以在不同的平台(Hadoop、Redis等)上运行HanLP -#默认的IO适配器如下,该适配器是基于普通文件系统的。 -#IOAdapter=com.hankcs.hanlp.corpus.io.FileIOAdapter -#感知机词法分析器 -#PerceptronCWSModelPath=data/model/perceptron/pku199801/cws.bin -#PerceptronPOSModelPath=data/model/perceptron/pku199801/pos.bin -#PerceptronNERModelPath=data/model/perceptron/pku199801/ner.bin -#CRF词法分析器 -#CRFCWSModelPath=data/model/crf/pku199801/cws.txt -#CRFPOSModelPath=data/model/crf/pku199801/pos.txt -#CRFNERModelPath=data/model/crf/pku199801/ner.txt -#更多配置项请参考 https://github.com/hankcs/HanLP/blob/master/src/main/java/com/hankcs/hanlp/HanLP.java#L59 自行添加 \ No newline at end of file diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/AllKeys.class b/cl_stream_service/target/classes/com/bfd/mf/entity/AllKeys.class deleted file mode 100644 index fbb198c..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/AllKeys.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/AreaCategoryEntity.class b/cl_stream_service/target/classes/com/bfd/mf/entity/AreaCategoryEntity.class deleted file mode 100644 index 52e4f9d..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/AreaCategoryEntity.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/FieldNormaliz.class b/cl_stream_service/target/classes/com/bfd/mf/entity/FieldNormaliz.class deleted file mode 100644 index 9ea098b..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/FieldNormaliz.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/MfFieldInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/MfFieldInfo.class deleted file mode 100644 index 4149f21..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/MfFieldInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/TypeEntity.class b/cl_stream_service/target/classes/com/bfd/mf/entity/TypeEntity.class deleted file mode 100644 index f0d9832..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/TypeEntity.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/FiledTableInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/FiledTableInfo.class deleted file mode 100644 index 93f6886..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/FiledTableInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfChannelInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfChannelInfo.class deleted file mode 100644 index a01c916..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfChannelInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfDoctypeInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfDoctypeInfo.class deleted file mode 100644 index 5e03740..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfDoctypeInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldInfo.class deleted file mode 100644 index 15f52bd..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldTableInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldTableInfo.class deleted file mode 100644 index 8f66eeb..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldTableInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldType.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldType.class deleted file mode 100644 index 039402f..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfFieldType.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfSouceInfo.class b/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfSouceInfo.class deleted file mode 100644 index d7cb563..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/entity/mysql/MfSouceInfo.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService$StartListenMsqlThread.class b/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService$StartListenMsqlThread.class deleted file mode 100644 index 7735892..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService$StartListenMsqlThread.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService.class b/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService.class deleted file mode 100644 index 8aaf2c0..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/runstart/RunStartService.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/annotation/SetProperty.class b/cl_stream_service/target/classes/com/bfd/mf/service/annotation/SetProperty.class deleted file mode 100644 index c61278c..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/annotation/SetProperty.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ExtendTypeInterface.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ExtendTypeInterface.class deleted file mode 100644 index 718ef31..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ExtendTypeInterface.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ForegroundExtendType.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ForegroundExtendType.class deleted file mode 100644 index 642a63c..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ForegroundExtendType.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParentExctendType.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParentExctendType.class deleted file mode 100644 index c673864..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParentExctendType.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ChunkData.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ChunkData.class deleted file mode 100644 index 7258567..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ChunkData.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ValueData.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ValueData.class deleted file mode 100644 index 3c39513..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData$ValueData.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData.class b/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData.class deleted file mode 100644 index 996ecf9..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/extendType/ParralleData.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/kafka/IKafka.class b/cl_stream_service/target/classes/com/bfd/mf/service/kafka/IKafka.class deleted file mode 100644 index 7705707..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/kafka/IKafka.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/kafka/ReadKafka.class b/cl_stream_service/target/classes/com/bfd/mf/service/kafka/ReadKafka.class deleted file mode 100644 index 419e230..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/kafka/ReadKafka.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenKafkaManager.class b/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenKafkaManager.class deleted file mode 100644 index afd3db2..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenKafkaManager.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenTaskManager.class b/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenTaskManager.class deleted file mode 100644 index 3cadf54..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/listen/ListenTaskManager.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/rmi/ServiceManager.class b/cl_stream_service/target/classes/com/bfd/mf/service/rmi/ServiceManager.class deleted file mode 100644 index 152927d..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/rmi/ServiceManager.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.class b/cl_stream_service/target/classes/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.class deleted file mode 100644 index 0839b53..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/rmi/impl/ServiceManagerImpl.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/AreaCategoryMappingUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/AreaCategoryMappingUtils.class deleted file mode 100644 index 1285d5c..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/AreaCategoryMappingUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/BfdJodis.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/BfdJodis.class deleted file mode 100644 index bf56a88..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/BfdJodis.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CharUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/CharUtil.class deleted file mode 100644 index 8c1c4e1..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CharUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CodisUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/CodisUtils.class deleted file mode 100644 index 7946081..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CodisUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CustomStopWordsProvider.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/CustomStopWordsProvider.class deleted file mode 100644 index 9be814e..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/CustomStopWordsProvider.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager$DBConnectionPool.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager$DBConnectionPool.class deleted file mode 100644 index 98f1760..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager$DBConnectionPool.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager.class deleted file mode 100644 index 2282123..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBConnectionManager.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBUtil.class deleted file mode 100644 index 739c0b8..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DBUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataCheckUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataCheckUtil.class deleted file mode 100644 index 862011b..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataCheckUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataTypeSelectUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataTypeSelectUtils.class deleted file mode 100644 index c600236..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DataTypeSelectUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DateUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/DateUtil.class deleted file mode 100644 index 7db9878..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/DateUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils$1.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils$1.class deleted file mode 100644 index ac2d775..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils$1.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils.class deleted file mode 100644 index 5d69041..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/EnLPUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/HanLPUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/HanLPUtils.class deleted file mode 100644 index f4b5176..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/HanLPUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/HttpClientUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/HttpClientUtil.class deleted file mode 100644 index b5e6d57..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/HttpClientUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/JsonUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/JsonUtils.class deleted file mode 100644 index 5b5df93..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/JsonUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadExcel.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadExcel.class deleted file mode 100644 index 2e27a98..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadExcel.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadProperties.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadProperties.class deleted file mode 100644 index bfce5ae..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/LoadProperties.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/MfMD5Util.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/MfMD5Util.class deleted file mode 100644 index 30907d5..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/MfMD5Util.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/NlpUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/NlpUtils.class deleted file mode 100644 index e323a94..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/NlpUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/PropertiesUtil.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/PropertiesUtil.class deleted file mode 100644 index 1cb0236..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/PropertiesUtil.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/ReadExcelUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/ReadExcelUtils.class deleted file mode 100644 index 2f5afd6..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/ReadExcelUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$1.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$1.class deleted file mode 100644 index 7d8bc8b..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$1.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$PooledObject.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$PooledObject.class deleted file mode 100644 index 2fab614..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool$PooledObject.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool.class deleted file mode 100644 index 68659cf..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/RoundRobinJedisPool.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/ValueException.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/ValueException.class deleted file mode 100644 index 832afb3..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/ValueException.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/WeiboFilterUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/WeiboFilterUtils.class deleted file mode 100644 index 2aba886..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/WeiboFilterUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/tools/WriteMethod.class b/cl_stream_service/target/classes/com/bfd/mf/service/tools/WriteMethod.class deleted file mode 100644 index 15f8232..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/tools/WriteMethod.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/AvailcontentApiUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/AvailcontentApiUtils.class deleted file mode 100644 index 9dc43d9..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/AvailcontentApiUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$1.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$1.class deleted file mode 100644 index 44f69fc..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$1.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$2.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$2.class deleted file mode 100644 index ac1b7c2..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils$2.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils.class deleted file mode 100644 index 11895f9..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/HlkkwUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/OpinionApiUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/OpinionApiUtils.class deleted file mode 100644 index c4ee226..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/OpinionApiUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/SentimentApiUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/SentimentApiUtils.class deleted file mode 100644 index e1380fc..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/SentimentApiUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/TransferclfApiUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/TransferclfApiUtils.class deleted file mode 100644 index 0bf91cf..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/TransferclfApiUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/com/bfd/mf/service/utils/WordCloudApiUtils.class b/cl_stream_service/target/classes/com/bfd/mf/service/utils/WordCloudApiUtils.class deleted file mode 100644 index 1e9b7b2..0000000 Binary files a/cl_stream_service/target/classes/com/bfd/mf/service/utils/WordCloudApiUtils.class and /dev/null differ diff --git a/cl_stream_service/target/classes/hanlp.properties b/cl_stream_service/target/classes/hanlp.properties deleted file mode 100644 index e7518b1..0000000 --- a/cl_stream_service/target/classes/hanlp.properties +++ /dev/null @@ -1,41 +0,0 @@ -#本配置文件中的路径的根目录,根目录+其他路径=完整路径(支持相对路径,请参考:https://github.com/hankcs/HanLP/pull/254) -#Windows用户请注意,路径分隔符统一使用/ -root=/opt/data/nlp/hanlp/ -#root=/Users/mountain/Documents/nlp/hanlp/ -#root = D:/opt/data/nlp/hanlp - -#好了,以上为唯一需要修改的部分,以下配置项按需反注释编辑。 - -#核心词典路径 -#CoreDictionaryPath=data/dictionary/CoreNatureDictionary.txt -#2元语法词典路径 -#BiGramDictionaryPath=data/dictionary/CoreNatureDictionary.ngram.txt -#自定义词典路径,用;隔开多个自定义词典,空格开头表示在同一个目录,使用“文件名 词性”形式则表示这个词典的词性默认是该词性。优先级递减。 -#所有词典统一使用UTF-8编码,每一行代表一个单词,格式遵从[单词] [词性A] [A的频次] [词性B] [B的频次] ... 如果不填词性则表示采用词典的默认词性。 -CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; 现代汉语补充词库.txt; 全国地名大全.txt ns; 人名词典.txt; 机构名词典.txt; 上海地名.txt ns;data/dictionary/person/nrf.txt nrf; -#停用词词典路径 -#CoreStopWordDictionaryPath=data/dictionary/stopwords.txt -#同义词词典路径 -#CoreSynonymDictionaryDictionaryPath=data/dictionary/synonym/CoreSynonym.txt -#人名词典路径 -#PersonDictionaryPath=data/dictionary/person/nr.txt -#人名词典转移矩阵路径 -#PersonDictionaryTrPath=data/dictionary/person/nr.tr.txt -#繁简词典根目录 -#tcDictionaryRoot=data/dictionary/tc -#HMM分词模型 -#HMMSegmentModelPath=data/model/segment/HMMSegmentModel.bin -#分词结果是否展示词性 -#ShowTermNature=true -#IO适配器,实现com.hankcs.hanlp.corpus.io.IIOAdapter接口以在不同的平台(Hadoop、Redis等)上运行HanLP -#默认的IO适配器如下,该适配器是基于普通文件系统的。 -#IOAdapter=com.hankcs.hanlp.corpus.io.FileIOAdapter -#感知机词法分析器 -#PerceptronCWSModelPath=data/model/perceptron/pku199801/cws.bin -#PerceptronPOSModelPath=data/model/perceptron/pku199801/pos.bin -#PerceptronNERModelPath=data/model/perceptron/pku199801/ner.bin -#CRF词法分析器 -#CRFCWSModelPath=data/model/crf/pku199801/cws.txt -#CRFPOSModelPath=data/model/crf/pku199801/pos.txt -#CRFNERModelPath=data/model/crf/pku199801/ner.txt -#更多配置项请参考 https://github.com/hankcs/HanLP/blob/master/src/main/java/com/hankcs/hanlp/HanLP.java#L59 自行添加 \ No newline at end of file diff --git a/data.txt b/data.txt deleted file mode 100644 index 744d18c..0000000 --- a/data.txt +++ /dev/null @@ -1 +0,0 @@ -{"pagetype":"keyword","cate":"keyword:芯片","attachTag":"芯片呀","pageUrls":[],"project_name":"ic","url":"http://s.weibo.com/weibo/%E8%8A%AF%E7%89%87&xsort=time&nodup=1&page=44","crawlDataFlag":"keyword:芯片","appId":"ic","weibos":[{"weiboURL":"http://weibo.com/5499111041/JvCPTwzvt?refer_flag=1001030103_","repostUrl":"http://weibo.com/5499111041/JvCPTwzvt?refer_flag=1001030103_?type=repost","berepost":"https://weibo.com/5197015236/JvqWLukeZ?refer_flag=1001030103_","expression":[],"forward":{"forwardUserUrl":"http://weibo.com/5197015236/JvqWLukeZ?refer_flag=1001030103_","forwardImgs":"","forwardPostSource":"微博 weibo.com","forwardQuoteCount":"11","forwardAttitudesCount":"","forwardexpression":[],"forwardCommentsCount":"","forwardPubTime":"1606228800000","forwardAuthor":"买方研究员","forwardUrl":"http://weibo.com","forwarduid":"5197015236","forwardContent":"最近在关注碳纤维,大家可以酌情关注一下中简科技,有谁曾经研究过的,可以交流一下。 ​"},"iconIMG":"http:https://tvax1.sinaimg.cn/default/images/default_avatar_male_50.gif?KID=imgbed,tva&Expires=1606393532&ssig=tqIfj60%2BPF","commentUrl":"http://weibo.com/5499111041/JvCPTwzvt?refer_flag=1001030103_?type=comment","relType":"q","source":"荣耀V30 PRO 5G","isVIP":0,"content":"上海石化高端碳纤维//@买方研究员:回复@2020匹斯安辣乌: 碳纤维跟芯片一样,高端的跟低端的可以说是完全不同的两个东西啊,中国需要的是高端碳纤维,未来战斗机、大飞机、航天,都需要大量应用,低端的汽车风机等行业也要用。低端的不能拿来用在高端上,低端的我们其实不缺,上海石化搞碳纤维","uid":"5499111041","wid":"4575374577762987","checks":[],"weiboImgs":"","comment":0,"time":"1605819360000","userType":0,"support":0,"userUrl":"http://weibo.com/5499111041?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"岳阳山巅"},{"weiboURL":"http://weibo.com/6349076778/JvCM6esRs?refer_flag=1001030103_","repostUrl":"http://weibo.com/6349076778/JvCM6esRs?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax2.sinaimg.cn/crop.0.0.180.180.50/006VG4Ualy8fj1jdheklbj30500500sq.jpg?KID=imgbed,tva&Expires=1606393532&ssig=s9sarOs1o8","commentUrl":"http://weibo.com/6349076778/JvCM6esRs?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"即使我知道这已经不可能了、希望它会回来,'mholdingontosomethingthatusedtobethere.Hopingitwillcomeback,evenIknowitwon't.我还抓着一些过去的东西不放!#芯片# 2金华·许村 ​","uid":"6349076778","wid":"4575372223447538","checks":[],"weiboImgs":"","comment":1,"time":"1605818760000","userType":0,"support":0,"userUrl":"http://weibo.com/6349076778?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"4y6vAoba28R"},{"weiboURL":"http://weibo.com/1763597487/JvCKrpCaZ?refer_flag=1001030103_","repostUrl":"http://weibo.com/1763597487/JvCKrpCaZ?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.1022.1022.50/691e5cafly8gbkynyxcj4j20se0se755.jpg?KID=imgbed,tva&Expires=1606393532&ssig=zO8rvxapDV","commentUrl":"http://weibo.com/1763597487/JvCKrpCaZ?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isChecked":1,"isVIP":0,"content":"【¥19.9】太赫兹热能芯片肩颈腰椎自发热贴片 ​","uid":"1763597487","wid":"4575371196104953","checks":[],"weiboImgs":"","comment":2,"time":"1605818520000","userType":3,"support":0,"userUrl":"http://weibo.com/1763597487?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"推荐好物菌"},{"weiboURL":"http://weibo.com/2731955817/JvCJgrw7R?refer_flag=1001030103_","repostUrl":"http://weibo.com/2731955817/JvCJgrw7R?refer_flag=1001030103_?type=repost","berepost":"https://weibo.com/5994003317/JtP0ujGFR?refer_flag=1001030103_","expression":[],"forward":{"forwardUserUrl":"http://weibo.com/5994003317/JtP0ujGFR?refer_flag=1001030103_","forwardImgs":"","forwardPostSource":"","forwardQuoteCount":"956","forwardAttitudesCount":"","forwardexpression":[],"forwardCommentsCount":"","forwardPubTime":"1605312840000","forwardAuthor":"老板联播","forwardUrl":"http://weibo.com","forwarduid":"5994003317","forwardContent":"【曾被外国技术封锁,#中国拿到光刻机入场券#】“哪怕把所有图纸给你们中国人,你们也未必能做出光刻机。”18年前,外方工程师的这番话,刺痛了贺荣明的心。当时,全球光刻机市场只有荷兰、美国、日本拥有“入场券”,并对中国实施技术封锁。但他没有退缩,带领团队,从维修零部件开始研发。L央视新闻的微博视频 收起全文d"},"iconIMG":"http:https://tvax4.sinaimg.cn/crop.0.0.996.996.50/a2d65669ly8g0y1wyiwmfj20ro0rodiw.jpg?KID=imgbed,tva&Expires=1606393532&ssig=pOguZkaqNm","commentUrl":"http://weibo.com/2731955817/JvCJgrw7R?refer_flag=1001030103_?type=comment","relType":"q","source":"iQOO Neo","isVIP":1,"content":"//@侯宁:看到这么一段历史: 1972年,武汉无线电元件三厂编写的《光刻掩模版的制造》32开66页。中国芯片光刻工艺研究起步,比美国稍晚,跟日本差不多同时起步,比韩国、台湾早10年。1965年中国科学院研制出65型接触式光刻机。1970年代,中国科学院开始研制计算机辅助光刻掩模工艺。然后?","uid":"2731955817","wid":"4575370466558351","checks":[],"weiboImgs":"","comment":0,"time":"1605818340000","userType":0,"support":0,"userUrl":"http://weibo.com/2731955817?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"安稳的生活感悟"},{"weiboURL":"http://weibo.com/5704785722/JvCIrBXIc?refer_flag=1001030103_","repostUrl":"http://weibo.com/5704785722/JvCIrBXIc?refer_flag=1001030103_?type=repost","berepost":"https://weibo.com/6931925052/JvxD0aTwm?refer_flag=1001030103_","expression":[{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/09/2018new_keai_org.png","name":"[可爱]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/09/2018new_keai_org.png","name":"[可爱]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/29/2018new_ye_org.png","name":"[耶]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/29/2018new_ye_org.png","name":"[耶]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/29/2018new_ye_org.png","name":"[耶]"}],"forward":{"forwardUserUrl":"http://weibo.com/6931925052/JvxD0aTwm?refer_flag=1001030103_","forwardImgs":"","forwardPostSource":"微博 weibo.com","forwardQuoteCount":"111","forwardAttitudesCount":"","forwardexpression":[],"forwardCommentsCount":"","forwardPubTime":"1606290000000","forwardAuthor":"涨涨板板大神","forwardUrl":"http://weibo.com","forwarduid":"6931925052","forwardContent":"发布了头条文章:《独家重磅:周期股行情的逻辑研究(2020-11-25)》 O独家重磅:周期股行情的逻辑研究(2020-11-25) ​"},"iconIMG":"http:https://tvax2.sinaimg.cn/crop.0.160.960.960.50/006e4HmWly8g04fxojgyxj30qo0zkgnz.jpg?KID=imgbed,tva&Expires=1606393532&ssig=5j4BN%2Fabsr","commentUrl":"http://weibo.com/5704785722/JvCIrBXIc?refer_flag=1001030103_?type=comment","relType":"q","source":"nova 7 SE 5G 活力版","isVIP":1,"content":"//@武汉刘正涛:回复@杨公股:没有杠杆的业绩价值不一样//@杨公股:@武汉刘正涛 涛总 芯片茅台的同花顺预测明年只有35%增速 有没有需要提防?[可爱][可爱][耶][耶][耶]","uid":"5704785722","wid":"4575369959047672","checks":[],"weiboImgs":"","comment":0,"time":"1605818220000","userType":0,"support":0,"userUrl":"http://weibo.com/5704785722?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"努力做一个不让人讨厌的人"},{"weiboURL":"http://weibo.com/6348344568/JvCHScP2T?refer_flag=1001030103_","repostUrl":"http://weibo.com/6348344568/JvCHScP2T?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.180.180.50/006VD0qkly8fixdmn73aaj30500500sl.jpg?KID=imgbed,tva&Expires=1606393532&ssig=f4xwU4sac8","commentUrl":"http://weibo.com/6348344568/JvCHScP2T?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"据悉,预计在2015年第一季度正式上市;瑞风M3在安徽蒙城江淮安驰汽车新基地成功下线、更进一步奠定了江淮汽车在乘用车与商用车领域新的里程碑、并一次性向蒙城政府交付首批100台现车……梅赛德斯-奔驰(Mercedes-Benz)将于明年年底正式发布新一代S级、瑞风M3将作为江淮汽车明星参展阵容中的重点展车…… ​ 展开全文c","uid":"6348344568","wid":"4575369603056159","checks":[],"weiboImgs":"","comment":0,"time":"1605818160000","userType":0,"support":0,"userUrl":"http://weibo.com/6348344568?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"三头知情他到"},{"weiboURL":"http://weibo.com/2846202393/JvCG1h72T?refer_flag=1001030103_","repostUrl":"http://weibo.com/2846202393/JvCG1h72T?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tva2.sinaimg.cn/crop.0.0.180.180.50/a9a59a19jw1e8qgp5bmzyj2050050aa8.jpg?KID=imgbed,tva&Expires=1606393532&ssig=6JZ32IK6Jd","commentUrl":"http://weibo.com/2846202393/JvCG1h72T?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"当我们使用USB设备时,由于插件的原因,我们常常无法将它们插入到接口中。为了避免这个问题,设计师马远把连接器换成了两个芯片,一个在上面,一个在下面。前面和后面都可以准确插入。#练字# ​","uid":"2846202393","wid":"4575368454078663","checks":["微博达人"],"weiboImgs":"","comment":1,"time":"1605817860000","userType":0,"support":0,"userUrl":"http://weibo.com/2846202393?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"看来笑但是大"},{"weiboURL":"http://weibo.com/6388562438/JvCFtwvEa?refer_flag=1001030103_","repostUrl":"http://weibo.com/6388562438/JvCFtwvEa?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.200.200.50/006YlKVEly8gkh1e5507dj305k05kjr8.jpg?KID=imgbed,tva&Expires=1606393532&ssig=tEkqrZCYbK","commentUrl":"http://weibo.com/6388562438/JvCFtwvEa?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"【自制自动牛奶口罩】燕麦含有丰富的纤维,与牛奶混合使用。不仅能美白肌肤,还能溶解黑头,抑制油脂。把自动芯片和牛奶混合成奶油状,涂在脸上,用清水洗15分钟左右。一周可以使用两次。 2韶关·韶关铁路第一中学 ​","uid":"6388562438","wid":"4575368117748150","checks":[],"weiboImgs":"","comment":0,"time":"1605817800000","userType":0,"support":0,"userUrl":"http://weibo.com/6388562438?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"楼彬彬农民"},{"weiboURL":"http://weibo.com/6869862113/JvCD8ss5C?refer_flag=1001030103_","repostUrl":"http://weibo.com/6869862113/JvCD8ss5C?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.180.180.50/007uVeXDly8ghegtftv5fj3050050jrb.jpg?KID=imgbed,tva&Expires=1606393532&ssig=486qfCePNa","commentUrl":"http://weibo.com/6869862113/JvCD8ss5C?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"Mars声道系统包括悬停和底座两个部分,悬停的外形像飞溅芯片,采用超薄设计1。由75英寸超薄前方扬声器和无线电放大器组成,配有CS RAX译码器,频率80Hz、21kHz、360度。整体发声集成系统设置在4厘米以下的密封钢上。 2三门峡·建业・森林半岛 ​","uid":"6869862113","wid":"4575366666781164","checks":[],"weiboImgs":"","comment":0,"time":"1605817440000","userType":0,"support":0,"userUrl":"http://weibo.com/6869862113?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"辉煌的库丨冰洁"},{"weiboURL":"http://weibo.com/6373870244/JvCBXcKPS?refer_flag=1001030103_","repostUrl":"http://weibo.com/6373870244/JvCBXcKPS?refer_flag=1001030103_?type=repost","berepost":"","expression":[{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/be/remen_zuiyou180605_org.png","name":"[最右]"}],"forward":{},"iconIMG":"http:https://tvax4.sinaimg.cn/crop.0.0.200.200.50/006Xm6OMly8gb52io1e92j305k05kaa0.jpg?KID=imgbed,tva&Expires=1606393532&ssig=0zJ2yHnfxD","commentUrl":"http://weibo.com/6373870244/JvCBXcKPS?refer_flag=1001030103_?type=comment","relType":"m","source":"荣耀20i","isVIP":0,"content":"加拿大科技公司与著名服装品牌拉尔夫·兰顿合作设计了智能T,这件T恤的导电性是由纱编织而成的,里面有另外的暗箱,里面有蓝牙芯片和运动感应器,运动时在卡带上设置了运动数据。在智能手机中,通过蓝牙实时传送给iPhone,穿T恤运动时,心跳数、脚步距离、能量消耗等都会出现在智能手机上。#陶藝# ​[最右]","uid":"6373870244","wid":"4575365933039976","checks":[],"weiboImgs":"","comment":0,"time":"1605817260000","userType":0,"support":0,"userUrl":"http://weibo.com/6373870244?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"九文滨Bernice"},{"weiboURL":"http://weibo.com/3970890824/JvCtlx5iG?refer_flag=1001030103_","repostUrl":"http://weibo.com/3970890824/JvCtlx5iG?refer_flag=1001030103_?type=repost","berepost":"","expression":[{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/b0/2018new_xu_org.png","name":"[嘘]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/d4/2018new_xianhua_org.png","name":"[鲜花]"}],"forward":{},"iconIMG":"http:https://tva1.sinaimg.cn/crop.0.0.290.290.50/ecaefc48jw8ecl52v2mvoj20820820sp.jpg?KID=imgbed,tva&Expires=1606393532&ssig=rmzEMpkBZM","commentUrl":"http://weibo.com/3970890824/JvCtlx5iG?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone客户端","isVIP":0,"content":"众所周知,尺子是用来测量长度的,而梳子是用来梳头的。不过,设计师想出了一个新点子,在梳子尺的侧面增加了一块芯片,所以还有另外一个目的:存储数据,成为真正的U盘。所以,当人多的时候,你可以把梳子或尺子放进电脑的USB接口,给他们一个惊喜。 2日照·小尧沟村 ​[嘘][鲜花]","uid":"3970890824","wid":"4575360597885202","checks":["微博达人"],"weiboImgs":"","comment":0,"time":"1605816000000","userType":0,"support":0,"userUrl":"http://weibo.com/3970890824?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"红舞鞋呵呵"},{"weiboURL":"http://weibo.com/5557538618/JvCrJkEBY?refer_flag=1001030103_","repostUrl":"http://weibo.com/5557538618/JvCrJkEBY?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.1080.1080.50/00646RFEly8gezew9qoxoj30u00u00u5.jpg?KID=imgbed,tva&Expires=1606393532&ssig=eTtmWmEXVV","commentUrl":"http://weibo.com/5557538618/JvCrJkEBY?refer_flag=1001030103_?type=comment","relType":"m","source":"iPhone XS Max","isVIP":1,"content":"新到稀缺好货🔥曲屏华为P30pro 国际版双4G6+128G 麒麟980芯片纯原装靓机 2深圳·华强商业圈 ​","uid":"5557538618","wid":"4575359594922674","checks":[],"weiboImgs":"","comment":0,"time":"1605815760000","userType":0,"support":0,"userUrl":"http://weibo.com/5557538618?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"深圳华强北手机批发报价单"},{"weiboURL":"http://weibo.com/7410282901/JvChmmje3?refer_flag=1001030103_","repostUrl":"http://weibo.com/7410282901/JvChmmje3?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax2.sinaimg.cn/crop.73.174.896.896.50/0085uN5Xly8gcparv9wo2j30u018utcr.jpg?KID=imgbed,tva&Expires=1606393532&ssig=Lzb2xHjvzt","commentUrl":"http://weibo.com/7410282901/JvChmmje3?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isVIP":0,"content":"时事点评20201125-4苹果都没搞出来的无线充电器发布:随意摆放,双10W充电 苹果发布M1芯片,英特尔坐不住了:推出自己的“白牌”笔记本电脑麻烦了!号称准确率99%新冠检测试剂,英政府采购后发现差太多 ​","uid":"7410282901","wid":"4575353165317123","checks":[],"weiboImgs":"","comment":0,"time":"1605814260000","userType":0,"support":0,"userUrl":"http://weibo.com/7410282901?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"史宁-shining"},{"weiboURL":"http://weibo.com/6575860151/JvCgb4pAz?refer_flag=1001030103_","repostUrl":"http://weibo.com/6575860151/JvCgb4pAz?refer_flag=1001030103_?type=repost","berepost":"https://weibo.com/2708212105/JvC4WAN52?refer_flag=1001030103_","expression":[],"forward":{"forwardUserUrl":"http://weibo.com/2708212105/JvC4WAN52?refer_flag=1001030103_","forwardImgs":"","forwardPostSource":"微博 weibo.com","forwardQuoteCount":"4","forwardAttitudesCount":"","forwardexpression":[],"forwardCommentsCount":"","forwardPubTime":"1605812400000","forwardAuthor":"搞笑官","forwardUrl":"http://weibo.com","forwarduid":"2708212105","forwardContent":"人们总说你变了,却没问你经历了什么。 ​"},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.0.0.438.438.50/007b1DCvly8fthx1vp8m3j30c60c6t8o.jpg?KID=imgbed,tva&Expires=1606393532&ssig=bbfruXqi17","commentUrl":"http://weibo.com/6575860151/JvCgb4pAz?refer_flag=1001030103_?type=comment","relType":"q","source":"荣耀V30 PRO 5G","isVIP":0,"content":"厉害了我的哥,点开图,看语录,别哭别哭,九龙坡公安分局的人体定位就是这么残酷!经历了九龙坡公安分局警虎局长的暴力恐怖仪器,人的身体必须变,他们的伤害神器通过人的血液追踪,人的DAN追踪,人的基因追踪,人的电追踪,人的芯片追踪,人的骨髓追踪,这些身体数据是被九龙坡公安分局输入进系统!","uid":"6575860151","wid":"4575352431051679","checks":[],"weiboImgs":"","comment":0,"time":"1605814080000","userType":0,"support":0,"userUrl":"http://weibo.com/6575860151?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"用户6575860151"},{"weiboURL":"http://weibo.com/6031718568/JvCfgi1x1?refer_flag=1001030103_","repostUrl":"http://weibo.com/6031718568/JvCfgi1x1?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax3.sinaimg.cn/crop.197.0.558.558.50/006Actxmly8fl31ngm1puj30p00fi3zb.jpg?KID=imgbed,tva&Expires=1606393532&ssig=pNGJL0BFdN","commentUrl":"http://weibo.com/6031718568/JvCfgi1x1?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isChecked":1,"isVIP":0,"content":"智能盖触屏温度显示保温杯 原价29.9元券后19.9元 智能显温采用食品级304不锈钢,安全材质,智能芯片,密封不漏水,自用送人,都非常不错! 火遍抖音智能温度显示保温杯~ 安全材质食品级304不锈钢智能芯片~ 密封不漏水,安全更放心 送人有面子,自用有档次~ 智能不锈钢保温杯女温度显示大容量简约水杯便携定制logo泡茶杯子 ​","uid":"6031718568","wid":"4575351864295795","checks":[],"weiboImgs":"","comment":0,"time":"1605813900000","userType":3,"support":0,"userUrl":"http://weibo.com/6031718568?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"白菜沙僧"},{"weiboURL":"http://weibo.com/6379671572/JvCfd7vJu?refer_flag=1001030103_","repostUrl":"http://weibo.com/6379671572/JvCfd7vJu?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax4.sinaimg.cn/crop.0.0.200.200.50/006XKs0Aly8fovdpqw9cjj305k05k3yk.jpg?KID=imgbed,tva&Expires=1606393532&ssig=09yOYE76zu","commentUrl":"http://weibo.com/6379671572/JvCfd7vJu?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isChecked":1,"isVIP":0,"content":"智能盖触屏温度显示保温杯 原价29.9元券后19.9元 智能显温采用食品级304不锈钢,安全材质,智能芯片,密封不漏水,自用送人,都非常不错! 火遍抖音智能温度显示保温杯~ 安全材质食品级304不锈钢智能芯片~ 密封不漏水,安全更放心 送人有面子,自用有档次~ 智能不锈钢保温杯女温度显示大容量简约水杯便携定制logo泡茶杯子 ​","uid":"6379671572","wid":"4575351831790280","checks":[],"weiboImgs":"","comment":0,"time":"1605813900000","userType":3,"support":0,"userUrl":"http://weibo.com/6379671572?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"白菜小白龙"},{"weiboURL":"http://weibo.com/5092491890/JvCf9xsgd?refer_flag=1001030103_","repostUrl":"http://weibo.com/5092491890/JvCf9xsgd?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax1.sinaimg.cn/crop.197.0.475.475.50/005yDzLYly8fl31hqw9gbj30nk0d8q3n.jpg?KID=imgbed,tva&Expires=1606393532&ssig=60h7AGezsQ","commentUrl":"http://weibo.com/5092491890/JvCf9xsgd?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isChecked":1,"isVIP":0,"content":"智能盖触屏温度显示保温杯 原价29.9元券后19.9元 智能显温采用食品级304不锈钢,安全材质,智能芯片,密封不漏水,自用送人,都非常不错! 火遍抖音智能温度显示保温杯~ 安全材质食品级304不锈钢智能芯片~ 密封不漏水,安全更放心 送人有面子,自用有档次~ 智能不锈钢保温杯女温度显示大容量简约水杯便携定制logo泡茶杯子 ​","uid":"5092491890","wid":"4575351797973461","checks":[],"weiboImgs":"","comment":0,"time":"1605813900000","userType":3,"support":0,"userUrl":"http://weibo.com/5092491890?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"白菜八戒"},{"weiboURL":"http://weibo.com/6311415403/JvCf6jDHg?refer_flag=1001030103_","repostUrl":"http://weibo.com/6311415403/JvCf6jDHg?refer_flag=1001030103_?type=repost","berepost":"","expression":[],"forward":{},"iconIMG":"http:https://tvax1.sinaimg.cn/crop.0.1.403.403.50/006T83sDly8fl31kxoxslj30bd0b9wex.jpg?KID=imgbed,tva&Expires=1606393532&ssig=R6%2F5UhawsI","commentUrl":"http://weibo.com/6311415403/JvCf6jDHg?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isChecked":1,"isVIP":0,"content":"智能盖触屏温度显示保温杯 原价29.9元券后19.9元 智能显温采用食品级304不锈钢,安全材质,智能芯片,密封不漏水,自用送人,都非常不错! 火遍抖音智能温度显示保温杯~ 安全材质食品级304不锈钢智能芯片~ 密封不漏水,安全更放心 送人有面子,自用有档次~ 智能不锈钢保温杯女温度显示大容量简约水杯便携定制logo泡茶杯子 ​","uid":"6311415403","wid":"4575351764680830","checks":[],"weiboImgs":"","comment":0,"time":"1605813900000","userType":3,"support":0,"userUrl":"http://weibo.com/6311415403?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"白菜唐僧"},{"weiboURL":"http://weibo.com/7341965831/JvC9RdSOO?refer_flag=1001030103_","repostUrl":"http://weibo.com/7341965831/JvC9RdSOO?refer_flag=1001030103_?type=repost","berepost":"","expression":[{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/1e/2018new_taikaixin_org.png","name":"[太开心]"},{"img":"http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/1e/2018new_taikaixin_org.png","name":"[太开心]"}],"forward":{},"iconIMG":"http:https://tvax1.sinaimg.cn/crop.0.0.1080.1080.50/0080S8HJly8g987vlomimj30u00u00xb.jpg?KID=imgbed,tva&Expires=1606393532&ssig=WmvhjGTnS%2F","commentUrl":"http://weibo.com/7341965831/JvC9RdSOO?refer_flag=1001030103_?type=comment","relType":"m","source":"微博 weibo.com","isVIP":1,"content":"#双11预售# 精选精选 H2O小型家用【USB加湿器】卷后仅要9.9元!!!现在购买即立减5.0元!加湿器家用静音卧室小型大雾量办公室桌面迷你宿舍学生空气车载【送充电线+质保1年】USB接口~智能芯片防烧干自动断电!家用办公车载都可以【240ml大容量储水】6小时持续加湿,纳米细雾不湿 ​ 展开全文c[太开心][太开心]","uid":"7341965831","wid":"4575348513308990","checks":[],"weiboImgs":"","comment":0,"time":"1605813120000","userType":0,"support":0,"userUrl":"http://weibo.com/7341965831?refer_flag=1001030103_","hrefAndSource":"","repost":0,"username":"真好物"}],"attr":{"cate":"keyword:芯片","crawlDataFlag":"keyword:芯片","attachTag":"芯片呀","appId":"ic","project_name":"ic","brand":"芯片"},"brand":"芯片","cid":"sina","creation_time":1606382732} diff --git a/dataSaveManager/dataSaveManager.iml b/dataSaveManager/dataSaveManager.iml deleted file mode 100644 index bb03ec3..0000000 --- a/dataSaveManager/dataSaveManager.iml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/dataSaveManager/pom.xml b/dataSaveManager/pom.xml deleted file mode 100644 index 7980398..0000000 --- a/dataSaveManager/pom.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - cl_stream - com.bfd.mf - 2.0-SNAPSHOT - - 4.0.0 - - dataSaveManager - - - - - - \ No newline at end of file diff --git a/dataSaveManager/src/main/java/com/bfd/mf/datasave/rmi/DataSaveManager.java b/dataSaveManager/src/main/java/com/bfd/mf/datasave/rmi/DataSaveManager.java deleted file mode 100644 index 7b7fc52..0000000 --- a/dataSaveManager/src/main/java/com/bfd/mf/datasave/rmi/DataSaveManager.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.bfd.mf.datasave.rmi; - - -import com.bfd.mf.entity.FieldNormaliz; - -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.util.Map; - -public interface DataSaveManager extends Remote{ - - public void addTaskName(FieldNormaliz fieldNormaliz) throws RemoteException; - - public void stopImprotTask(int kafkaSerName, String kafkaName) throws RemoteException ; - - public void startImprotTask(String kafkaName) throws RemoteException ; - - public long getNowImportEsNum(Map param) throws RemoteException; - - public int getNowKafkaNum() throws RemoteException ; -} diff --git a/dataSaveManager/src/main/java/com/bfd/mf/entity/DataSaveManager.java b/dataSaveManager/src/main/java/com/bfd/mf/entity/DataSaveManager.java deleted file mode 100644 index 4f4d065..0000000 --- a/dataSaveManager/src/main/java/com/bfd/mf/entity/DataSaveManager.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.bfd.mf.entity; - - -import com.bfd.mf.entity.FieldNormaliz; - -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.util.Map; - -public interface DataSaveManager extends Remote{ - - public void addTaskName(FieldNormaliz fieldNormaliz) throws RemoteException; - - public void stopImprotTask(int kafkaSerName, String kafkaName) throws RemoteException ; - - public void startImprotTask(String kafkaName) throws RemoteException ; - - public long getNowImportEsNum(Map param) throws RemoteException; - - public int getNowKafkaNum() throws RemoteException ; -} diff --git a/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldInfo.java b/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldInfo.java deleted file mode 100644 index 5d3185f..0000000 --- a/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldInfo.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.bfd.mf.entity; - -import java.util.List; - -public class FieldInfo { - - private String kafka_type ; - - private List kafkaJsonString ; - - private List kafkaJsonArray ; - - public String getKafka_type() { - return kafka_type; - } - - public void setKafka_type(String kafka_type) { - this.kafka_type = kafka_type; - } - - public List getKafkaJsonString() { - return kafkaJsonString; - } - - public void setKafkaJsonString(List kafkaJsonString) { - this.kafkaJsonString = kafkaJsonString; - } - - public List getKafkaJsonArray() { - return kafkaJsonArray; - } - - public void setKafkaJsonArray(List kafkaJsonArray) { - this.kafkaJsonArray = kafkaJsonArray; - } - - - -} diff --git a/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java b/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java deleted file mode 100644 index 1dbe416..0000000 --- a/dataSaveManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java +++ /dev/null @@ -1,207 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; -import java.util.Map; -import java.util.Set; - -public class FieldNormaliz implements Serializable{ - - private static final long serialVersionUID = 1L; - - private int id ; - - private String kafkaName ; - - private int kafkaSerName ; - - private int esSerName ; - - private String esSuffixNames ; - - private String docType ; - - private int isSemtimentApi ; - - private boolean ishlKeyword ; - - private int bussinessType ; - - private Map fieldNormalizeContentMap ; - - private Map fieldNormalizeCommentMap ; - - private Map>> fieldDataMap ; - - private Map fieldInfo ; - - private String groupId ; - - private String createTime ; - - private String finshTime ; - - private int status ; - - private String projectName ; - - public String getKafkaName() { - return kafkaName; - } - - public void setKafkaName(String kafkaName) { - this.kafkaName = kafkaName; - } - - public int getKafkaSerName() { - return kafkaSerName; - } - - public void setKafkaSerName(int kafkaSerName) { - this.kafkaSerName = kafkaSerName; - } - - public int getEsSerName() { - return esSerName; - } - - public void setEsSerName(int esSerName) { - this.esSerName = esSerName; - } - - public String getDocType() { - return docType; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - public int getIsSemtimentApi() { - return isSemtimentApi; - } - - public void setIsSemtimentApi(int isSemtimentApi) { - this.isSemtimentApi = isSemtimentApi; - } - - public int getBussinessType() { - return bussinessType; - } - - public void setBussinessType(int bussinessType) { - this.bussinessType = bussinessType; - } - - public Map getFieldNormalizeContentMap() { - return fieldNormalizeContentMap; - } - - public void setFieldNormalizeContentMap(Map fieldNormalizeContentMap) { - this.fieldNormalizeContentMap = fieldNormalizeContentMap; - } - - public Map getFieldNormalizeCommentMap() { - return fieldNormalizeCommentMap; - } - - public void setFieldNormalizeCommentMap(Map fieldNormalizeCommentMap) { - this.fieldNormalizeCommentMap = fieldNormalizeCommentMap; - } - - public Map>> getFieldDataMap() { - return fieldDataMap; - } - - public Map> getFieldDataMapByType(String type){ - return fieldDataMap.get(type); - } - - public void addFieldDataMap(String type, Map fixFieldData, Integer bussinessType){ - Set keys = fixFieldData.keySet() ; - Map> fieldMaps = fieldDataMap.get(bussinessType) ; - Map fieldMap = fieldMaps.get(type) ; - for(String key : keys){ - fieldMap.put(key, key) ; - } - fieldMaps.put(type, fieldMap); - fieldDataMap.put(bussinessType, fieldMaps) ; - } - - public void setFieldDataMap(Map>> fieldDataMap) { - this.fieldDataMap = fieldDataMap; - } - - public Map getFieldInfo() { - return fieldInfo; - } - - public void setFieldInfo(Map fieldInfo) { - this.fieldInfo = fieldInfo; - } - - public boolean isIshlKeyword() { - return ishlKeyword; - } - - public void setIshlKeyword(boolean ishlKeyword) { - this.ishlKeyword = ishlKeyword; - } - - public String getEsSuffixNames() { - return esSuffixNames; - } - - public void setEsSuffixNames(String esSuffixNames) { - this.esSuffixNames = esSuffixNames; - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getCreateTime() { - return createTime; - } - - public void setCreateTime(String createTime) { - this.createTime = createTime; - } - - public String getFinshTime() { - return finshTime; - } - - public void setFinshTime(String finshTime) { - this.finshTime = finshTime; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getProjectName() { - return projectName; - } - - public void setProjectName(String projectName) { - this.projectName = projectName; - } - - -} diff --git a/dataSaveManager/src/main/main3.iml b/dataSaveManager/src/main/main3.iml deleted file mode 100644 index 908ad4f..0000000 --- a/dataSaveManager/src/main/main3.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/dataSaveManager/target/classes/com/bfd/mf/datasave/rmi/DataSaveManager.class b/dataSaveManager/target/classes/com/bfd/mf/datasave/rmi/DataSaveManager.class deleted file mode 100644 index 726db35..0000000 Binary files a/dataSaveManager/target/classes/com/bfd/mf/datasave/rmi/DataSaveManager.class and /dev/null differ diff --git a/dataSaveManager/target/classes/com/bfd/mf/entity/DataSaveManager.class b/dataSaveManager/target/classes/com/bfd/mf/entity/DataSaveManager.class deleted file mode 100644 index 44f23cc..0000000 Binary files a/dataSaveManager/target/classes/com/bfd/mf/entity/DataSaveManager.class and /dev/null differ diff --git a/dataSaveManager/target/classes/com/bfd/mf/entity/FieldInfo.class b/dataSaveManager/target/classes/com/bfd/mf/entity/FieldInfo.class deleted file mode 100644 index 3a3109c..0000000 Binary files a/dataSaveManager/target/classes/com/bfd/mf/entity/FieldInfo.class and /dev/null differ diff --git a/dataSaveManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class b/dataSaveManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class deleted file mode 100644 index c1e93c5..0000000 Binary files a/dataSaveManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class and /dev/null differ diff --git a/dataSaveManager/target/dataSaveManager-2.0-SNAPSHOT.jar b/dataSaveManager/target/dataSaveManager-2.0-SNAPSHOT.jar deleted file mode 100644 index 47b6061..0000000 Binary files a/dataSaveManager/target/dataSaveManager-2.0-SNAPSHOT.jar and /dev/null differ diff --git a/dataSaveManager/target/maven-archiver/pom.properties b/dataSaveManager/target/maven-archiver/pom.properties deleted file mode 100644 index 36af746..0000000 --- a/dataSaveManager/target/maven-archiver/pom.properties +++ /dev/null @@ -1,5 +0,0 @@ -#Generated by Maven -#Tue Dec 01 11:44:48 CST 2020 -version=2.0-SNAPSHOT -groupId=com.bfd.mf -artifactId=dataSaveManager diff --git a/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst deleted file mode 100644 index 5ba5bad..0000000 --- a/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst +++ /dev/null @@ -1,4 +0,0 @@ -com\bfd\mf\entity\FieldInfo.class -com\bfd\mf\entity\FieldNormaliz.class -com\bfd\mf\datasave\rmi\DataSaveManager.class -com\bfd\mf\entity\DataSaveManager.class diff --git a/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst deleted file mode 100644 index 6980246..0000000 --- a/dataSaveManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +++ /dev/null @@ -1,4 +0,0 @@ -E:\vzhicheng\datastream\SocialX_Stream_1.0\dataSaveManager\src\main\java\com\bfd\mf\datasave\rmi\DataSaveManager.java -E:\vzhicheng\datastream\SocialX_Stream_1.0\dataSaveManager\src\main\java\com\bfd\mf\entity\DataSaveManager.java -E:\vzhicheng\datastream\SocialX_Stream_1.0\dataSaveManager\src\main\java\com\bfd\mf\entity\FieldInfo.java -E:\vzhicheng\datastream\SocialX_Stream_1.0\dataSaveManager\src\main\java\com\bfd\mf\entity\FieldNormaliz.java diff --git a/error.txt b/error.txt deleted file mode 100644 index 35762c5..0000000 --- a/error.txt +++ /dev/null @@ -1,23 +0,0 @@ -{"isDownload":"true","sentiment":"0","lastModifiedTime":"1618914556254","finalPhrase":"[\"包包似乎\",\"保證\",\"男友後\",\"男友後\",\"恬娃\",\"恬娃\",\"主持賣藥節\",\"節目\",\"資深\"]","imagePath":"[\"http://172.18.1.180:9980/group1/default/20210420/17/57/7/b2ec02d0c2d84a023b031ac86daa54a2.jpg\"]","channel":"新闻资讯","primaryPost":"1","availability":"1","source":"台湾自由电子新闻网","title":"69歲恬娃情斷大鵰嫩男 賣藥台開節目撈金","content":"〔記者鍾智凱/台北報導〕69歲資深藝人恬娃(范月娟)先前曾交大鵰男友,後來因戀情見光死不了了之,她改交年紀比自己小30歲廚師,但18日恬娃證實2人已情斷了。 資深女星恬娃。(翻攝臉書) 恬娃本來因交廚師男友陷入熱戀,她還四處想找人引薦,但恬娃透露男友後來露出真面目,想跟她討衣服、包包,似乎把她當搖錢樹,她為此非常心痛,也坦言如今錢沒那麼多,賺沒以前多,「不然我是不是應該車子房子都給他?」為此恬娃改去淡水河廣播電台主持賣藥節目療情傷,節目名稱叫五彩人生,「現在多一條路是一條路,加減賺,我也還在學習」,暫時忘卻嫩男舊愛。 不用抽 不用搶 現在用APP看新聞 保證天天中獎  點我下載APP  按我看活動辦法","dataCount":"0","pageType":"newscontent","titleLength":"20","crawlDataFlagType":"2","crawlDataFlag":"url:https://news.ltn.com.tw/list/breakingnews/popular","sysAbstract":"」為此恬娃改去淡水河廣播電台主持賣藥節目療情傷。她還四處想找人引薦。(翻攝臉書) 恬娃本來因交廚師男友陷入熱戀。","attr":"{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachtag\":{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"keyword\":\"\",\"project_name\":\"ic\"}","processtime":"{\"tbegintime\":1618911741241,\"dendtime\":1618912636914,\"endtime\":1618912637091,\"sbegintime\":1618912637,\"begintime\":1618912637000,\"sendtime\":1618912637,\"dbegintime\":1618912628288,\"tendtime\":1618912627842,\"sreadtime\":1618914556228}","enSource":"nltntw","createTimeStr":"2021-04-20 18:29:16","createDate":"2021-04-20T18:29:16.254+08:00","summary":"","cate":"[\"首頁\",\"即時新聞\"]","contentSimHash":"3ee08182c105fef51be65f70746cebe7","contentTag":"nomal","docType":"news","sysSentiment":"0.5","dns":"https://www.ltn.com.tw/","createDay":"1618848000000","crawlTimeStr":"2021-04-20 17:57:17","crawlDate":"2021-04-20T17:57:17.000+08:00","channelNum":"1","crawlDay":"1618848000000","sysKeywords":"{\"恬娃\":2.817442,\"情\":2.142277,\"男友\":1.8904518,\"賺\":1.6074233,\"證\":1.5846791,\"改\":1.5827811,\"還\":1.5242193,\"想\":1.48552,\"後\":1.4613901,\"交\":1.4430544}","titleSimHash":"0b61a430f88031c62201325b29f864d2","places":"[\"台北\"]","hlKeywords":"[\"想\",\"還\",\"交\",\"情\",\"證\",\"改\",\"賺\",\"男友\",\"恬娃\",\"後\"]","createTime":"1618914556254","crawlTime":"1618912637000","opinions":"[\"深藝人恬\",\"多\",\"日恬\"]","contentLength":"304","originalPhrase":"[\"恬娃\",\"男友後\",\"資深\",\"主持賣藥節\",\"交紀\",\"交大男友\",\"似乎錢\",\"保證\",\"包包似乎\",\"台北資\",\"坦言錢\",\"女星恬\",\"娃證\",\"嫩舊\",\"引薦\",\"恬娃交\",\"恬娃改\",\"恬娃范月娟\",\"恬娃透露\",\"情節\",\"情見\",\"想討\",\"房子給\",\"播電\",\"新聞\",\"日恬\",\"是不是該車\",\"活辦\",\"深藝\",\"目稱\",\"稱人生\",\"節目\",\"紀日\",\"給恬娃\",\"習忘\",\"翻臉\",\"范月娟交大\",\"薦恬娃\",\"藝恬娃\",\"處想\",\"衣服包包\",\"見光\",\"討衣服\",\"記鍾\",\"該車子\",\"證中\",\"證情\",\"賣藥節目\",\"賺以前\",\"賺還\"]","projectName":"ic","primary":"1"} -{"isDownload":"true","sentiment":"0","lastModifiedTime":"1618914556254","finalPhrase":"[\"灌救\",\"救護車\",\"救護車\",\"民眾\",\"民眾\",\"市豐\",\"台中市\",\"脫困\",\"處民宅\"]","imagePath":"[\"http://172.18.1.180:9980/group1/default/20210420/17/38/7/490d09dbc6403cd67d9025352b7b8f92.jpg\"]","channel":"新闻资讯","primaryPost":"1","availability":"1","source":"台湾自由电子新闻网","title":"台中豐原民宅火警 2住戶脫困嗆傷送醫","content":"台中市豐原區一處民宅起火,冒出黑煙。(民眾提供) 〔記者歐素美/台中報導〕台中市豐原區市前街一處民宅,今天下午4點發生火災,出動消防車9輛、救護車1輛,以及24名消防人員到場灌救;2名民眾已自行脫困。 報案人指稱,1樓有火警但人在2樓,台中市消防局派遣豐南、豐原、潭子及石岡分隊馳援。豐南消防分隊小隊長方鴻智帶隊到現場,發現1樓後側廚房火警,並佈線搶救,目前灌救中,火災原因待查。 2名64歲、90歲的女住戶雖脫困,因略有嗆傷情況,仍分別由石岡及豐原消防分隊救護車,送往豐原醫院治療。 不用抽 不用搶 現在用APP看新聞 保證天天中獎  點我下載APP  按我看活動辦法","dataCount":"0","pageType":"newscontent","titleLength":"18","crawlDataFlagType":"2","crawlDataFlag":"url:https://news.ltn.com.tw/list/breakingnews/local","sysAbstract":"仍分別由石岡及豐原消防分隊救護車。發現1樓後側廚房火警。(民眾提供) 〔記者歐素美/台中報導〕台中市豐原區市前街一處民宅。","attr":"{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/local\",\"attachtag\":{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/local\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"url:https://news.ltn.com.tw/list/breakingnews/local\",\"keyword\":\"\",\"project_name\":\"ic\"}","processtime":"{\"tbegintime\":1618912511220,\"dendtime\":1618912646275,\"endtime\":1618912646458,\"sbegintime\":1618912646,\"begintime\":1618912646306,\"sendtime\":1618912646,\"dbegintime\":1618912637604,\"tendtime\":1618912636914,\"sreadtime\":1618914556228}","enSource":"nltntw","createTimeStr":"2021-04-20 18:29:16","createDate":"2021-04-20T18:29:16.254+08:00","summary":"","cate":"[\"首頁\",\"臺中市\"]","contentSimHash":"d0b0e83048fd21d3fec3218da94229f8","contentTag":"nomal","docType":"news","sysSentiment":"0.1","dns":"https://www.ltn.com.tw/","createDay":"1618848000000","crawlTimeStr":"2021-04-20 17:57:26","crawlDate":"2021-04-20T17:57:26.000+08:00","channelNum":"1","crawlDay":"1618848000000","sysKeywords":"{\"豐\":2.9008133,\"救\":2.3782477,\"中\":1.6393417,\"隊\":1.589696,\"困\":1.5656444,\"火警\":1.5539802,\"發\":1.4888172,\"台中\":1.4786136,\"市\":1.4772615,\"眾\":1.4700259}","titleSimHash":"55e4688f4e7d09981dfead795c9e695f","places":"[\"前街\",\"台中市\",\"台中\"]","hlKeywords":"[\"困\",\"豐\",\"救\",\"市\",\"火警\",\"台中\",\"隊\",\"發\",\"中\",\"眾\"]","createTime":"1618914556254","crawlTime":"1618912646000","opinions":"[\"長\",\"美\"]","contentLength":"285","originalPhrase":"[\"救護車\",\"民眾\",\"處民宅\",\"豐南\",\"灌救\",\"台中市\",\"市豐\",\"住雖脫\",\"保證\",\"冒出黑\",\"出車\",\"南豐\",\"南隊\",\"台中台中\",\"情石岡\",\"指稱\",\"援豐\",\"新聞\",\"智隊\",\"民宅發\",\"活辦\",\"派遣豐\",\"潭子石岡分\",\"火警線\",\"發後\",\"發生火\",\"眾提供\",\"眾自行\",\"石岡豐\",\"石岡分隊馳\",\"稱火警\",\"線救\",\"脫困\",\"自行脫\",\"街處\",\"記素\",\"證中\",\"護車輛\",\"護車送往\",\"豐市\",\"豐潭子\",\"豐處\",\"豐醫\",\"豐隊\",\"起火冒出\",\"車輛\",\"輛救\",\"輛灌\",\"辦法\",\"送往豐\"]","projectName":"ic","primary":"1"} -{"isDownload":"true","sentiment":"0","lastModifiedTime":"1618914556254","finalPhrase":"[\"保證\",\"代表飆\",\"告格林\",\"格林日\",\"狗狗格\",\"具體\",\"利克拉克\",\"讓美\",\"開始\"]","imagePath":"[\"http://172.18.1.180:9980/group1/default/20210420/17/57/7/00990b29d354d6700e3545509da242c3.jpg\"]","channel":"新闻资讯","primaryPost":"1","availability":"1","source":"台湾自由电子新闻网","title":"美議員也買狗狗幣 不到20天就賺6倍","content":"狗狗幣價格飆漲,讓美國共和黨眾議員格林(Mark Green)大賺6倍。(彭博) 〔財經頻道/綜合報導〕狗狗幣最近嶄露頭角,過去1個月以來持續飆漲,讓美國共和黨眾議員格林(Mark Green)受益匪淺,從他4月1日開始購買那天開始,到週一(19日)上午,狗狗幣價格暴漲了632%。 《商業內幕》報導,根據上週四提交的1份定期交易報告,格林在4月1日至14日期間購買了價值1000美元至1.5萬美元的狗狗幣,但具體數量未透露。 請繼續往下閱讀... 據報導,狗狗幣在4月1日的價格約為0.054美元,到本週一(19日)已升至0.39美元左右,代表飆漲632%,這也意味著格林的投資升值至7632美元至10萬9800美元,取決於他究竟購買了多少狗狗幣,就算格林是從4月14日買起,狗狗幣價格也上漲了247% 根據交易報告,格林還購買了以太經典(Ethereum Classic)及Stellar Lumens等其他加密貨幣。 據報導,狗狗幣總市值已達到500億美元,超過福特、萬豪國際(Marriott)、金百利克拉克(Kimberly-Clark) 一手掌握經濟脈動 點我訂閱自由財經Youtube頻道 不用抽 不用搶 現在用APP看新聞 保證天天中獎  點我下載APP  按我看活動辦法","dataCount":"0","pageType":"newscontent","titleLength":"18","crawlDataFlagType":"2","crawlDataFlag":"url:https://news.ltn.com.tw/list/breakingnews","sysAbstract":"狗狗幣價格也上漲了247% 根據交易報告。格林在4月1日至14日期間購買了價值1000美元至1.5萬美元的狗狗幣。狗狗幣在4月1日的價格約為0.054美元。","attr":"{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews\",\"attachtag\":{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"url:https://news.ltn.com.tw/list/breakingnews\",\"keyword\":\"\",\"project_name\":\"ic\"}","processtime":"{\"tbegintime\":1618912241220,\"dendtime\":1618912656881,\"endtime\":1618912657045,\"sbegintime\":1618912657,\"begintime\":1618912656892,\"sendtime\":1618912657,\"dbegintime\":1618912650189,\"tendtime\":1618912649698,\"sreadtime\":1618914556229}","enSource":"nltntw","createTimeStr":"2021-04-20 18:29:16","createDate":"2021-04-20T18:29:16.254+08:00","summary":"","cate":"[\"首頁\",\"國際財經\"]","contentSimHash":"f5c0575c57af0634ab8e306e889511b3","contentTag":"nomal","docType":"news","sysSentiment":"0.9","dns":"https://www.ltn.com.tw/","createDay":"1618848000000","crawlTimeStr":"2021-04-20 17:57:37","crawlDate":"2021-04-20T17:57:37.000+08:00","channelNum":"1","crawlDay":"1618848000000","sysKeywords":"{\"狗狗\":4.0843263,\"格林\":3.0948398,\"日\":2.5595202,\"萬\":2.1944585,\"%\":1.7367787,\"格\":1.6473284,\"經\":1.6379268,\"週\":1.5711052,\"APP\":1.5474534,\"過\":1.5331463}","titleSimHash":"c0be6661d667a20dd210c909d5edbf23","places":"[]","hlKeywords":"[\"APP\",\"週\",\"經\",\"日\",\"格林\",\"格\",\"萬\",\"過\",\"狗狗\"]","createTime":"1618914556254","crawlTime":"1618912657000","opinions":"[\"多\",\"值\",\"美\"]","contentLength":"545","originalPhrase":"[\"狗狗格\",\"格林日\",\"週日\",\"開始\",\"告格林\",\"讓美\",\"共和眾議\",\"眾議格林\",\"代表飆\",\"保證\",\"值萬\",\"具體\",\"利克拉克\",\"加密貨\",\"升值萬\",\"合狗狗\",\"商週\",\"太經\",\"始購買\",\"始週\",\"市值達\",\"投資\",\"持續飆\",\"掌握經\",\"新聞\",\"日狗狗\",\"日買\",\"日開\",\"日期間購買\",\"格約\",\"格飆\",\"格林投\",\"格林還購買\",\"活辦\",\"狗狗具\",\"狗狗日\",\"狗狗格林\",\"狗狗總\",\"狗狗露\",\"福特萬\",\"究竟購買\",\"約週\",\"經典\",\"經脈\",\"綜合\",\"總市值\",\"續飆讓\",\"自由財經\",\"萬取\",\"萬狗狗\"]","projectName":"ic","primary":"1"} -{"isDownload":"true","sentiment":"0","lastModifiedTime":"1618914556254","finalPhrase":"[\"保證\",\"成人網\",\"粉絲\",\"葛蕾絲\",\"情色\",\"情色\",\"網路\",\"衝浪\",\"衝浪\"]","channel":"新闻资讯","primaryPost":"1","availability":"1","source":"台湾自由电子新闻网","title":"衝浪》澳洲職業名將變身情色女王 連親姊妹都帶入行","content":"〔體育中心/綜合報導〕身材姣好的歐美體壇美女,近來流行轉戰情色圈,甚至因為人紅是非多,還傳出亦敵亦友、既合作又競爭的特殊關係。像澳洲職業衝浪名將轉型的科菲(Ellie-Jean Coffey),連親姊妹都帶入行,甚至因為搶客太兇,氣到同胞女賽車手改行的葛蕾絲(Renee Gracie)痛批:「她網站內容欺騙粉絲,壞了我們圈內行情!」  根據《每日郵報》等英、澳媒體報導,「女車神」葛蕾絲變身情色明星後,號稱光去年10月,就海撈200萬美元(約5721萬台幣);至於科菲進軍成人網路產業,也揚言1個月收入近100萬美元(約2846萬台幣),兩位跨界開創生涯第二春的前知名運動員,還攜手合作拍攝影音大肆宣傳,炒熱話題也引發熱議,不料才過沒多久,這對最佳拍檔卻又鬧翻拆夥,葛蕾絲抱怨:「她照片修太大,和本人完全不像,尤其所作所為已經嚴重影響到我的生意,也導致整個情色產業名聲受創。」  請繼續往下閱讀...  現年26歲、身高175公分的科菲,來自南半球衝浪家族,全家5姊妹及1個兄弟,從小積極參賽頗有名氣,她14歲獲贊助商支持,16歲成為青少女新星,但2017年決定退出自認對「女性極不公平」的職業衝浪舞台,帶著姊妹們投入會員制的成人網路市場發展,「或許我目前經營的事業太成功,給許多競爭者造成壓力,才會有這些爭議。」光個人IG坐擁百萬粉絲追蹤的科菲,從衝浪女神搖身變為「情色女王」後,信心十足這麼說。    更多照片請點此: https://www.instagram.com/p/BmNDkHglssi/ https://www.instagram.com/p/BFOBpWIvVsi/ https://www.instagram.com/p/CDiDVS2nV8T/ 不用抽 不用搶 現在用APP看新聞 保證天天中獎  點我下載APP  按我看活動辦法","dataCount":"0","pageType":"newscontent","titleLength":"24","crawlDataFlagType":"2","crawlDataFlag":"url:https://news.ltn.com.tw/list/breakingnews/popular","sysAbstract":"」光個人IG坐擁百萬粉絲追蹤的科菲。從衝浪女神搖身變為「情色女王」後。「或許我目前經營的事業太成功。","attr":"{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachtag\":{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"keyword\":\"\",\"project_name\":\"ic\"}","processtime":"{\"tbegintime\":1618912629244,\"dendtime\":1618912649698,\"endtime\":1618912649815,\"sbegintime\":1618912649,\"begintime\":1618912649716,\"sendtime\":1618912649,\"dbegintime\":1618912646913,\"tendtime\":1618912646275,\"sreadtime\":1618914556230}","enSource":"nltntw","createTimeStr":"2021-04-20 18:29:16","createDate":"2021-04-20T18:29:16.254+08:00","summary":"","cate":"[\"體育\",\"競技運動\",\"其它\"]","contentSimHash":"03edc131de37bff76683ab80e0e6fd84","contentTag":"nomal","docType":"news","sysSentiment":"0.5","dns":"https://www.ltn.com.tw/","createDay":"1618848000000","crawlTimeStr":"2021-04-20 17:57:29","crawlDate":"2021-04-20T17:57:29.000+08:00","channelNum":"1","crawlDay":"1618848000000","sysKeywords":"{\"絲\":2.6595452,\"情\":2.386189,\"色\":2.3782196,\"科菲\":2.3493404,\"衝\":2.2308242,\"浪\":2.227163,\"萬\":2.1463637,\"葛蕾\":2.0784652,\"這\":2.0686119,\"姊妹\":2.026014}","titleSimHash":"af5c934b673fb2f15bea106a67dda224","places":"[\"澳洲\",\"路市\"]","hlKeywords":"[\"色\",\"絲\",\"葛蕾\",\"姊妹\",\"情\",\"這\",\"浪\",\"萬\",\"衝\",\"科菲\"]","createTime":"1618914556254","crawlTime":"1618912649000","opinions":"[\"多\",\"美\"]","contentLength":"779","originalPhrase":"[\"情色\",\"衝浪\",\"粉絲\",\"約萬\",\"網路\",\"成人網\",\"職衝\",\"萬約\",\"葛蕾絲\",\"中心綜\",\"作經\",\"保證\",\"信心這\",\"修太大完全\",\"兄弟積\",\"公平職\",\"出自認\",\"力這\",\"南半球衝\",\"合作競\",\"同胞賽車\",\"坐萬\",\"型科菲\",\"夥葛蕾\",\"女王後\",\"媒體\",\"容欺\",\"展許\",\"市發\",\"引發\",\"後號稱\",\"成功給許\",\"拍鬧\",\"改行葛蕾\",\"新聞\",\"於科菲\",\"是非還\",\"有名贊\",\"欺騙\",\"活辦\",\"流行轉\",\"浪轉\",\"海萬\",\"澳洲職\",\"炒話題\",\"照片修太大\",\"照片請\",\"特殊關\",\"界開\",\"痛網\"]","projectName":"ic","primary":"1"} -{"isDownload":"true","sentiment":"0","lastModifiedTime":"1618914556254","finalPhrase":"[\"金銀銅\",\"全中運\",\"全隊\",\"全隊\",\"善化\",\"新莊\",\"網球\",\"網球\",\"莊高中\"]","imagePath":"[\"http://172.18.1.180:9980/group1/default/20210420/17/57/7/949b0677fa380982aa56bdd03df56999.jpg\",\"http://172.18.1.180:9980/group1/default/20210420/17/57/7/9f5cf75f8992bf1ca6a3840ba54de6c9.jpg\",\"http://172.18.1.180:9980/group1/default/20210420/17/58/7/5496859add176140d362a54321b8fde5.jpg\"]","channel":"新闻资讯","primaryPost":"1","availability":"1","source":"台湾自由电子新闻网","title":"全中運》網球賽史首見「三色牌」!高市新莊高中包辦男雙金銀銅","content":"新莊高中包辦全中運男雙金銀銅「三色牌」。(善化家長會提供) 〔體育中心/綜合報導〕110年全國中等學校運動會網球賽,今於雲林縣莿桐國中進行個人項目激戰,高男團體金牌得主高雄市新莊高中多喜臨門,除在男雙包辦金、銀、銅「三色牌」,締造全中運史上首見紀錄,男單4強也佔3席,且黃奕翔晉級單打決賽,還有機會締造3金佳績。 高男雙打決賽新莊高中兄弟鬩牆,未賽便已確定「金包銀」,林以誠/邱祐辰後來居上,4:6、7:5、10:7險勝曾右承/周裕翔,加上周文毅/林凱群在銅牌戰6:0、4:6、10:8扳倒台南善化高中蔡鎮安/謝宇瀚,讓新莊高中完成全中運網球賽史上,頭一回出現個人賽前三名全被同一學校囊括的空前盛況。 請繼續往下閱讀...  新莊高中體育組長兼教練陳俊維表示,本屆成績突出,主要是賽前進行特別集訓,每個人專精自己項目,不必參加單打又兼顧雙打,全隊士氣非常高昂。為讓學生專心出賽,陳俊維這次還特地在偏遠山區租下民宿,要求學生早睡早起、摒除雜念,加上球隊去年買一台二手福斯8人座當交通車,全隊同進同出,展現嚴謹團隊紀律,才能創下難得佳績。  新莊高中網球人才濟濟,整個球隊共有35人、教練4人,堪稱全台網球隊軍容最壯盛的高中,校長陳良傑特地趕來現場頒獎,沒想到居然親眼見證金、銀、銅「三色牌」,樂得他與全隊合影紀念這歷史時刻。 高男雙打金牌林以誠(右起)、邱祐辰。(善化家長會提供) 全中運新莊高中包辦雙打金銀銅牌後,全隊和校長合影留念。(善化家長會提供)  不用抽 不用搶 現在用APP看新聞 保證天天中獎  點我下載APP  按我看活動辦法","dataCount":"0","pageType":"newscontent","titleLength":"29","crawlDataFlagType":"2","crawlDataFlag":"url:https://news.ltn.com.tw/list/breakingnews/popular","sysAbstract":"新莊高中包辦全中運男雙金銀銅「三色牌」。(善化家長會提供) 全中運新莊高中包辦雙打金銀銅牌後。讓新莊高中完成全中運網球賽史上。","attr":"{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachtag\":{\"crawlDataFlag\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"url:https://news.ltn.com.tw/list/breakingnews/popular\",\"keyword\":\"\",\"project_name\":\"ic\"}","processtime":"{\"tbegintime\":1618912629254,\"dendtime\":1618912682426,\"endtime\":1618912682535,\"sbegintime\":1618912682,\"begintime\":1618912682445,\"sendtime\":1618912682,\"dbegintime\":1618912657665,\"tendtime\":1618912656881,\"sreadtime\":1618914556233}","enSource":"nltntw","createTimeStr":"2021-04-20 18:29:16","createDate":"2021-04-20T18:29:16.254+08:00","summary":"","cate":"[\"體育\",\"競技運動\",\"其它\"]","contentSimHash":"dc6c5da67002651127eca29e8b8d4bf3","contentTag":"nomal","docType":"news","sysSentiment":"0.9","dns":"https://www.ltn.com.tw/","createDay":"1618848000000","crawlTimeStr":"2021-04-20 17:58:02","crawlDate":"2021-04-20T17:58:02.000+08:00","channelNum":"1","crawlDay":"1618848000000","sysKeywords":"{\"賽\":3.8202982,\"新\":3.2733803,\"高中\":3.149334,\"隊\":2.918252,\"莊\":2.7940726,\"球\":2.6902316,\"全\":2.572654,\"校\":2.1874228,\"運\":2.0056849,\"雙\":1.9470395}","titleSimHash":"17a1b460bc483445c54dafdedf1b817d","places":"[\"三色牌\",\"台南\"]","hlKeywords":"[\"新\",\"校\",\"球\",\"高中\",\"全\",\"雙\",\"莊\",\"隊\",\"運\",\"賽\"]","createTime":"1618914556254","crawlTime":"1618912682000","opinions":"[\"強\",\"全\",\"險\",\"多\"]","contentLength":"671","originalPhrase":"[\"全隊\",\"網球\",\"金銀銅\",\"善化\",\"新莊\",\"全中運\",\"莊高中\",\"包辦\",\"林以誠\",\"球賽\",\"球隊\",\"締造\",\"賽前\",\"進行\",\"項目\",\"色牌\",\"體育\",\"高男雙\",\"高中包\",\"化長\",\"銀銅色\",\"長提供\",\"上首見紀錄\",\"中進\",\"中心綜\",\"中校長陳\",\"交通車\",\"佳績\",\"便確\",\"俊維\",\"俊維這\",\"保證\",\"偏遠\",\"兄弟鬩\",\"全中運網\",\"全台網\",\"全國中校\",\"兼顧雙\",\"出賽陳\",\"前進\",\"加文毅\",\"包辦雙\",\"史頭\",\"合全國中\",\"合影紀\",\"周裕翔加\",\"喜臨門\",\"回出賽\",\"堪稱\",\"奕翔\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801270408","finalPhrase":"[\"105069687511599\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798166964,\"endtime\":1620798167017,\"sbegintime\":1620798167021,\"begintime\":1620798167005,\"sendtime\":1620798167022,\"dbegintime\":1620798166403,\"tendtime\":1620798165797,\"sbeginreadtime\":1620801270357,\"sendreadtime\":1620801270697,\"sendsentkafka\":1620801270761,\"beginsentiment\":1620801270697,\"sbeginsentkafka\":1620801270761,\"endsentiment\":1620801270761}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:30","createDate":"2021-05-12T14:34:30.408+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:47","crawlDate":"2021-05-12T13:42:47.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801270408","crawlTime":"1620798167000","contentLength":"0","originalPhrase":"[\"105069687511599\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801270477","finalPhrase":"[\"105069705442832\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798175897,\"endtime\":1620798175996,\"sbegintime\":1620798176002,\"begintime\":1620798175983,\"sendtime\":1620798176003,\"dbegintime\":1620798175259,\"tendtime\":1620798175134,\"sbeginreadtime\":1620801270333,\"sendreadtime\":1620801270701,\"sendsentkafka\":1620801270770,\"beginsentiment\":1620801270701,\"sbeginsentkafka\":1620801270770,\"endsentiment\":1620801270770}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:30","createDate":"2021-05-12T14:34:30.477+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:56","crawlDate":"2021-05-12T13:42:56.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801270477","crawlTime":"1620798176000","contentLength":"0","originalPhrase":"[\"105069705442832\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801270532","finalPhrase":"[\"105069695908018\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"219da77e4442594d7021e4f8886d0fc0","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141745,\"dendtime\":1620798153913,\"endtime\":1620798153948,\"sbegintime\":1620798153952,\"begintime\":1620798153937,\"sendtime\":1620798153953,\"dbegintime\":1620798153373,\"tendtime\":1620798152988,\"sbeginreadtime\":1620801270344,\"sendreadtime\":1620801270705,\"sendsentkafka\":1620801270762,\"beginsentiment\":1620801270705,\"sbeginsentkafka\":1620801270762,\"endsentiment\":1620801270762}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:30","createDate":"2021-05-12T14:34:30.532+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:33","crawlDate":"2021-05-12T13:42:33.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6405177355525947905/6405177355525947905/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801270532","crawlTime":"1620798153000","contentLength":"0","originalPhrase":"[\"105069695908018\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801270382","finalPhrase":"[\"105069695517149\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798161837,\"endtime\":1620798200858,\"sbegintime\":1620798161875,\"begintime\":1620798200847,\"sendtime\":1620798161876,\"dbegintime\":1620798161403,\"tendtime\":1620798160779,\"sbeginreadtime\":1620801270323,\"sendreadtime\":1620801270704,\"sendsentkafka\":1620801270762,\"beginsentiment\":1620801270704,\"sbeginsentkafka\":1620801270762,\"endsentiment\":1620801270762}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:30","createDate":"2021-05-12T14:34:30.382+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:41","crawlDate":"2021-05-12T13:42:41.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801270382","crawlTime":"1620798161000","contentLength":"0","originalPhrase":"[\"105069695517149\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801270416","finalPhrase":"[\"105069707296681\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798160135,\"endtime\":1620798160150,\"sbegintime\":1620798160154,\"begintime\":1620798160142,\"sendtime\":1620798160155,\"dbegintime\":1620798157371,\"tendtime\":1620798157268,\"sbeginreadtime\":1620801270362,\"sendreadtime\":1620801270705,\"sendsentkafka\":1620801270762,\"beginsentiment\":1620801270705,\"sbeginsentkafka\":1620801270762,\"endsentiment\":1620801270762}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:30","createDate":"2021-05-12T14:34:30.416+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:40","crawlDate":"2021-05-12T13:42:40.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801270416","crawlTime":"1620798160000","contentLength":"0","originalPhrase":"[\"105069707296681\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801279957","finalPhrase":"[\"105078904902030\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"9423ed98135d89b74c786c9a13ce0029","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798233779,\"endtime\":1620798233829,\"sbegintime\":1620798233831,\"begintime\":1620798233815,\"sendtime\":1620798233832,\"dbegintime\":1620798233047,\"tendtime\":1620798232676,\"sbeginreadtime\":1620801279526,\"sendreadtime\":1620801279958,\"sendsentkafka\":1620801279959,\"beginsentiment\":1620801279958,\"sbeginsentkafka\":1620801279959,\"endsentiment\":1620801279959}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:34:39","createDate":"2021-05-12T14:34:39.957+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:43:53","crawlDate":"2021-05-12T13:43:53.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6431293881253364226/6431293881253364226/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801279957","crawlTime":"1620798233000","contentLength":"0","originalPhrase":"[\"105078904902030\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801629529","finalPhrase":"[\"105428491094681\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798161837,\"endtime\":1620798200858,\"sbegintime\":1620798161875,\"begintime\":1620798200847,\"sendtime\":1620798161876,\"dbegintime\":1620798161403,\"tendtime\":1620798160779,\"sbeginreadtime\":1620801629519,\"sendreadtime\":1620801629531,\"sendsentkafka\":1620801629531,\"beginsentiment\":1620801629531,\"sbeginsentkafka\":1620801629531,\"endsentiment\":1620801629531}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:29","createDate":"2021-05-12T14:40:29.529+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:41","crawlDate":"2021-05-12T13:42:41.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801629529","crawlTime":"1620798161000","contentLength":"0","originalPhrase":"[\"105428491094681\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801629537","finalPhrase":"[\"105428500950231\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"219da77e4442594d7021e4f8886d0fc0","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141745,\"dendtime\":1620798153913,\"endtime\":1620798153948,\"sbegintime\":1620798153952,\"begintime\":1620798153937,\"sendtime\":1620798153953,\"dbegintime\":1620798153373,\"tendtime\":1620798152988,\"sbeginreadtime\":1620801629520,\"sendreadtime\":1620801629540,\"sendsentkafka\":1620801629541,\"beginsentiment\":1620801629540,\"sbeginsentkafka\":1620801629541,\"endsentiment\":1620801629541}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:29","createDate":"2021-05-12T14:40:29.537+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:33","crawlDate":"2021-05-12T13:42:33.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6405177355525947905/6405177355525947905/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801629537","crawlTime":"1620798153000","contentLength":"0","originalPhrase":"[\"105428500950231\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801629582","finalPhrase":"[\"105428543732878\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798166964,\"endtime\":1620798167017,\"sbegintime\":1620798167021,\"begintime\":1620798167005,\"sendtime\":1620798167022,\"dbegintime\":1620798166403,\"tendtime\":1620798165797,\"sbeginreadtime\":1620801629523,\"sendreadtime\":1620801629583,\"sendsentkafka\":1620801629584,\"beginsentiment\":1620801629583,\"sbeginsentkafka\":1620801629584,\"endsentiment\":1620801629584}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:29","createDate":"2021-05-12T14:40:29.582+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:47","crawlDate":"2021-05-12T13:42:47.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801629582","crawlTime":"1620798167000","contentLength":"0","originalPhrase":"[\"105428543732878\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801629583","finalPhrase":"[\"105428544393592\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798175897,\"endtime\":1620798175996,\"sbegintime\":1620798176002,\"begintime\":1620798175983,\"sendtime\":1620798176003,\"dbegintime\":1620798175259,\"tendtime\":1620798175134,\"sbeginreadtime\":1620801629526,\"sendreadtime\":1620801629584,\"sendsentkafka\":1620801629584,\"beginsentiment\":1620801629584,\"sbeginsentkafka\":1620801629584,\"endsentiment\":1620801629584}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:29","createDate":"2021-05-12T14:40:29.583+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:56","crawlDate":"2021-05-12T13:42:56.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801629583","crawlTime":"1620798176000","contentLength":"0","originalPhrase":"[\"105428544393592\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801629800","finalPhrase":"[\"105428761399996\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798160135,\"endtime\":1620798160150,\"sbegintime\":1620798160154,\"begintime\":1620798160142,\"sendtime\":1620798160155,\"dbegintime\":1620798157371,\"tendtime\":1620798157268,\"sbeginreadtime\":1620801629524,\"sendreadtime\":1620801629801,\"sendsentkafka\":1620801629801,\"beginsentiment\":1620801629801,\"sbeginsentkafka\":1620801629801,\"endsentiment\":1620801629801}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:29","createDate":"2021-05-12T14:40:29.800+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:40","crawlDate":"2021-05-12T13:42:40.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801629800","crawlTime":"1620798160000","contentLength":"0","originalPhrase":"[\"105428761399996\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801634010","finalPhrase":"[\"105432972873076\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"9423ed98135d89b74c786c9a13ce0029","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798233779,\"endtime\":1620798233829,\"sbegintime\":1620798233831,\"begintime\":1620798233815,\"sendtime\":1620798233832,\"dbegintime\":1620798233047,\"tendtime\":1620798232676,\"sbeginreadtime\":1620801633651,\"sendreadtime\":1620801634012,\"sendsentkafka\":1620801634013,\"beginsentiment\":1620801634012,\"sbeginsentkafka\":1620801634013,\"endsentiment\":1620801634013}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:40:34","createDate":"2021-05-12T14:40:34.010+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:43:53","crawlDate":"2021-05-12T13:43:53.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6431293881253364226/6431293881253364226/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801634010","crawlTime":"1620798233000","contentLength":"0","originalPhrase":"[\"105432972873076\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801762692","finalPhrase":"[\"105561661585509\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798160135,\"endtime\":1620798160150,\"sbegintime\":1620798160154,\"begintime\":1620798160142,\"sendtime\":1620798160155,\"dbegintime\":1620798157371,\"tendtime\":1620798157268,\"sbeginreadtime\":1620801762689,\"sendreadtime\":1620801762696,\"sendsentkafka\":1620801762700,\"beginsentiment\":1620801762696,\"sbeginsentkafka\":1620801762700,\"endsentiment\":1620801762700}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:42","createDate":"2021-05-12T14:42:42.692+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:40","crawlDate":"2021-05-12T13:42:40.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801762692","crawlTime":"1620798160000","contentLength":"0","originalPhrase":"[\"105561661585509\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801762793","finalPhrase":"[\"105561760141431\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798166964,\"endtime\":1620798167017,\"sbegintime\":1620798167021,\"begintime\":1620798167005,\"sendtime\":1620798167022,\"dbegintime\":1620798166403,\"tendtime\":1620798165797,\"sbeginreadtime\":1620801762690,\"sendreadtime\":1620801762794,\"sendsentkafka\":1620801762795,\"beginsentiment\":1620801762794,\"sbeginsentkafka\":1620801762795,\"endsentiment\":1620801762795}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:42","createDate":"2021-05-12T14:42:42.793+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:47","crawlDate":"2021-05-12T13:42:47.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801762793","crawlTime":"1620798167000","contentLength":"0","originalPhrase":"[\"105561760141431\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801762799","finalPhrase":"[\"105561774854621\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"219da77e4442594d7021e4f8886d0fc0","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141745,\"dendtime\":1620798153913,\"endtime\":1620798153948,\"sbegintime\":1620798153952,\"begintime\":1620798153937,\"sendtime\":1620798153953,\"dbegintime\":1620798153373,\"tendtime\":1620798152988,\"sbeginreadtime\":1620801762696,\"sendreadtime\":1620801762809,\"sendsentkafka\":1620801762810,\"beginsentiment\":1620801762809,\"sbeginsentkafka\":1620801762810,\"endsentiment\":1620801762810}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:42","createDate":"2021-05-12T14:42:42.799+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:33","crawlDate":"2021-05-12T13:42:33.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6405177355525947905/6405177355525947905/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801762799","crawlTime":"1620798153000","contentLength":"0","originalPhrase":"[\"105561774854621\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801762861","finalPhrase":"[\"105561828210409\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798161837,\"endtime\":1620798200858,\"sbegintime\":1620798161875,\"begintime\":1620798200847,\"sendtime\":1620798161876,\"dbegintime\":1620798161403,\"tendtime\":1620798160779,\"sbeginreadtime\":1620801762722,\"sendreadtime\":1620801762862,\"sendsentkafka\":1620801762863,\"beginsentiment\":1620801762862,\"sbeginsentkafka\":1620801762863,\"endsentiment\":1620801762863}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:42","createDate":"2021-05-12T14:42:42.861+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:41","crawlDate":"2021-05-12T13:42:41.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801762861","crawlTime":"1620798161000","contentLength":"0","originalPhrase":"[\"105561828210409\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801762798","finalPhrase":"[\"105561832475331\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"96cb56f7f8a767d1bb0e31a157dd1d86","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798175897,\"endtime\":1620798175996,\"sbegintime\":1620798176002,\"begintime\":1620798175983,\"sendtime\":1620798176003,\"dbegintime\":1620798175259,\"tendtime\":1620798175134,\"sbeginreadtime\":1620801762698,\"sendreadtime\":1620801762867,\"sendsentkafka\":1620801762867,\"beginsentiment\":1620801762867,\"sbeginsentkafka\":1620801762867,\"endsentiment\":1620801762867}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:42","createDate":"2021-05-12T14:42:42.798+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:42:56","crawlDate":"2021-05-12T13:42:56.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6378795437683376642/6378795437683376642/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801762798","crawlTime":"1620798176000","contentLength":"0","originalPhrase":"[\"105561832475331\",\"news\"]","projectName":"ic","primary":"1"} -{"isDownload":"false","sentiment":"0","lastModifiedTime":"1620801765368","finalPhrase":"[\"105564334636230\",\"news\"]","phraseMark":"-1","channel":"新闻资讯","urlHash":"9423ed98135d89b74c786c9a13ce0029","primaryPost":"1","availability":"1","source":"今日头条","title":"","content":"","dataCount":"0","pageType":"newscontent","titleLength":"0","crawlDataFlagType":"0","crawlDataFlag":"keyword:强电磁脉冲防护","attr":"{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachtag\":{\"crawlDataFlag\":\"keyword:强电磁脉冲防护\",\"attachTag\":\"\",\"appId\":\"ic\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"},\"attachTag\":\"\",\"appId\":\"ic\",\"tname\":\"强电磁脉冲防护\",\"keyword\":\"强电磁脉冲防护\",\"project_name\":\"ic\",\"taskSign\":\"6b4cf73adb8061e2bba0d8228d1d0c3c\"}","processtime":"{\"tbegintime\":1620798141744,\"dendtime\":1620798233779,\"endtime\":1620798233829,\"sbegintime\":1620798233831,\"begintime\":1620798233815,\"sendtime\":1620798233832,\"dbegintime\":1620798233047,\"tendtime\":1620798232676,\"sbeginreadtime\":1620801764913,\"sendreadtime\":1620801765369,\"sendsentkafka\":1620801765369,\"beginsentiment\":1620801765369,\"sbeginsentkafka\":1620801765369,\"endsentiment\":1620801765369}","enSource":"ntoutiao","createTimeStr":"2021-05-12 14:42:45","createDate":"2021-05-12T14:42:45.368+08:00","summary":"","contentSimHash":"d41d8cd98f00b204e9800998ecf8427e","contentTag":"nomal","docType":"news","dns":"https://www.toutiao.com/","createDay":"1620748800000","crawlTimeStr":"2021-05-12 13:43:53","crawlDate":"2021-05-12T13:43:53.000+08:00","channelNum":"1","crawlDay":"1620748800000","url":"https://a6.pstatp.com/article/full/24/1/6431293881253364226/6431293881253364226/0/0/0/0/","titleSimHash":"d41d8cd98f00b204e9800998ecf8427e","createTime":"1620801765368","crawlTime":"1620798233000","contentLength":"0","originalPhrase":"[\"105564334636230\",\"news\"]","projectName":"ic","primary":"1"} diff --git a/etc/.properties b/etc/.properties deleted file mode 100644 index 77d878d..0000000 --- a/etc/.properties +++ /dev/null @@ -1,34 +0,0 @@ -crawl.kfk.metadata.broker.list=1 -crawl.kfk.metadata.broker.list=1 -crawl.kfk.metadata.broker.list=172.18.1.119:9992 -crawl.kfk.metadata.broker.list=172.18.1.119:9992 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.acks=all -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.retries=0 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 diff --git a/etc/145redis.properties b/etc/145redis.properties deleted file mode 100644 index a3bd7f9..0000000 --- a/etc/145redis.properties +++ /dev/null @@ -1,7 +0,0 @@ -#@author ruining.he -#redis.model -> install model {single,codis} - -#if model is codis,use config as below -redis.model=single -redis.ip=172.18.1.145 -redis.port=6379 \ No newline at end of file diff --git a/etc/1_kafka.properties b/etc/1_kafka.properties deleted file mode 100644 index 73d70b4..0000000 --- a/etc/1_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.119:9992 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/etc/2_kafka.properties b/etc/2_kafka.properties deleted file mode 100644 index 5aa0c9c..0000000 --- a/etc/2_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.178:9092,172.18.1.181:9092,172.18.1.182:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=latest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/etc/3_kafka.properties b/etc/3_kafka.properties deleted file mode 100644 index 6e17ba3..0000000 --- a/etc/3_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.114:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/etc/4_kafka.properties b/etc/4_kafka.properties deleted file mode 100644 index b87185c..0000000 --- a/etc/4_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=50.19.49.16:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/etc/5_kafka.properties b/etc/5_kafka.properties deleted file mode 100644 index 6fed870..0000000 --- a/etc/5_kafka.properties +++ /dev/null @@ -1,18 +0,0 @@ -#### Kafka Tool Parameters -crawl.kfk.metadata.broker.list=172.18.1.113:9092 -crawl.kfk.connectionTimeOut=50000 -crawl.kfk.zk.sessiontimeout.ms=50000 -crawl.kfk.kafka.serializer=kafka.serializer.StringEncoder -crawl.kfk.producer.acks=all -crawl.kfk.producer.retries=0 -crawl.kfk.producer.batch.size=16384 -crawl.kfk.producer.linger.ms=1 -crawl.kfk.producer.buffer.memory=33554432 -crawl.kfk.producer.max.request.size=10485760 -crawl.kfk.consumer.enable.auto.commit=true -crawl.kfk.consumer.auto.commit.interval.ms=1000 -crawl.kfk.consumer.session.timeout.ms=30000 -crawl.kfk.consumer.auto.offset.reset=earliest -crawl.kfk.consumer.thread.core.pool.size=100 -crawl.kfk.consumer.thread.maximum.pool.size=100 - diff --git a/etc/db.properties b/etc/db.properties deleted file mode 100644 index 4aee7e0..0000000 --- a/etc/db.properties +++ /dev/null @@ -1,10 +0,0 @@ -logfile=DBConnectManager.log -drivers=com.mysql.jdbc.Driver -db_stat.maxconn=100 -db_stat.url=jdbc:mysql://172.18.1.134:3306/intelligent_crawl?useUnicode=true&characterEncoding=utf-8 -db_stat.user=crawl666 -db_stat.password=lx2a4jN1xFT96kj20LU= -db_stat_alltask.maxconn=100 -db_stat_alltask.url=jdbc:mysql://172.18.1.134:3306/all_task?useUnicode=true&characterEncoding=utf-8 -db_stat_alltask.user=crawl666 -db_stat_alltask.password=lx2a4jN1xFT96kj20LU= \ No newline at end of file diff --git a/etc/elasticsearch_1.properties b/etc/elasticsearch_1.properties deleted file mode 100644 index 402af78..0000000 --- a/etc/elasticsearch_1.properties +++ /dev/null @@ -1,10 +0,0 @@ -crawl.elasticsearch.metadata.broker.list=172.18.1.145:9213,172.18.1.146:9213,172.18.1.147:9213 -crawl.elasticsearch.socket.timeout.interval.ms=5000 -crawl.elasticsearch.connect.timeout.ms=1000 -crawl.elasticsearch.max.connect.num=100 -crawl.elasticsearch.max.connect.per.route.num=100 -crawl.elasticsearch.max.retry.timeout=300000 -crawl.elasticsearch.producer.max.cache.num=2000 -crawl.elasticsearch.producer.max.write.time=120000 -crawl.elasticsearch.consumer.quary.num=2000 -crawl.elasticsearch.consumer.scroll.time=3 diff --git a/etc/elasticsearch_2.properties b/etc/elasticsearch_2.properties deleted file mode 100644 index b4827a3..0000000 --- a/etc/elasticsearch_2.properties +++ /dev/null @@ -1,10 +0,0 @@ -crawl.elasticsearch.metadata.broker.list=172.18.1.134:9201 -crawl.elasticsearch.socket.timeout.interval.ms=60000 -crawl.elasticsearch.connect.timeout.ms=50000 -crawl.elasticsearch.max.connect.num=100 -crawl.elasticsearch.max.connect.per.route.num=100 -crawl.elasticsearch.max.retry.timeout=300000 -crawl.elasticsearch.producer.max.cache.num=1000 -crawl.elasticsearch.producer.max.write.time=100000 -crawl.elasticsearch.consumer.quary.num=1000 -crawl.elasticsearch.consumer.scroll.time=3 diff --git a/etc/log4j.properties b/etc/log4j.properties deleted file mode 100644 index 2b0bc8b..0000000 --- a/etc/log4j.properties +++ /dev/null @@ -1,48 +0,0 @@ - -log4j.rootLogger=debug - -log4j.logger.com.bfd.mf.service = DEBUG,SERVICE -log4j.logger.com.bfd.mf.DATASAVE = DEBUG,DATASAVE -#service log -log4j.appender.SERVICE=org.apache.log4j.DailyRollingFileAppender -log4j.appender.SERVICE.Threshold=DEBUG -log4j.appender.SERVICE.File=../logs/service/service.log -log4j.appender.SERVICE.DatePattern='.'yyyy-MM-dd -log4j.appender.SERVICE.layout=org.apache.log4j.PatternLayout -log4j.appender.SERVICE.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n - -log4j.logger.com.bfd.mf.datasave = DEBUG,DATASAVE -#datasave log -log4j.appender.DATASAVE=org.apache.log4j.DailyRollingFileAppender -log4j.appender.DATASAVE.Threshold=DEBUG -log4j.appender.DATASAVE.File=../logs/datasave/datasave.log -log4j.appender.DATASAVE.DatePattern='.'yyyy-MM-dd -log4j.appender.DATASAVE.layout=org.apache.log4j.PatternLayout -log4j.appender.DATASAVE.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n - - -log4j.logger.com.bfd.mf.service.extendType.ParentExctendType= DEBUG,ParentExctendType -#service ParentExctendType log -log4j.appender.ParentExctendType=org.apache.log4j.DailyRollingFileAppender -log4j.appender.ParentExctendType.Threshold=DEBUG -log4j.appender.ParentExctendType.File=../logs/service/ParentExctendType.log -log4j.appender.ParentExctendType.DatePattern='.'yyyy-MM-dd -log4j.appender.ParentExctendType.layout=org.apache.log4j.PatternLayout -log4j.appender.ParentExctendType.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n -log4j.logger.com.bfd.mf.service.extendType.ParentExctendType= DEBUG,ParentExctendType - - - -log4j.logger.com.bfd.mf.service.extendType.ForegroundExtendType= DEBUG,ForegroundExtendType -#service log -log4j.appender.ForegroundExtendType=org.apache.log4j.DailyRollingFileAppender -log4j.appender.ForegroundExtendType.Threshold=DEBUG -log4j.appender.ForegroundExtendType.File=../logs/service/servicedatasource.log -log4j.appender.ForegroundExtendType.DatePattern='.'yyyy-MM-dd -log4j.appender.ForegroundExtendType.layout=org.apache.log4j.PatternLayout -log4j.appender.ForegroundExtendType.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%L) - %m%n - - - - -~ \ No newline at end of file diff --git a/etc/news.properties b/etc/news.properties deleted file mode 100644 index 7635753..0000000 --- a/etc/news.properties +++ /dev/null @@ -1,7 +0,0 @@ -#@author ruining.he -#redis.model -> install model {single,codis} - -#if model is codis,use config as below -redis.model=single -redis.ip=172.24.3.124 -redis.port=6379 \ No newline at end of file diff --git a/etc/posTag.txt b/etc/posTag.txt deleted file mode 100644 index 827e5ee..0000000 --- a/etc/posTag.txt +++ /dev/null @@ -1,36 +0,0 @@ -u -ud -ude1 -ude2 -ude3 -udeng -udh -ug -uguo -uj -ul -ule -ulian -uls -usuo -uv -uyy -uz -uzhe -uzhi -w -wb -wd -wf -wh -wj -wky -wkz -wm -wn -wp -ws -wt -ww -wyy -wyz \ No newline at end of file diff --git a/etc/redis.properties b/etc/redis.properties deleted file mode 100644 index 6f803aa..0000000 --- a/etc/redis.properties +++ /dev/null @@ -1,7 +0,0 @@ -#@author ruining.he -#redis.model -> install model {single,codis} - -#if model is codis,use config as below -redis.model=single -redis.ip=172.18.1.152 -redis.port=6379 \ No newline at end of file diff --git a/etc/stopWords.txt b/etc/stopWords.txt deleted file mode 100644 index 94bc1ce..0000000 --- a/etc/stopWords.txt +++ /dev/null @@ -1,1280 +0,0 @@ -嗳 -要 -这些 -赶早不赶晚 -感觉 -嗬 -毫不 -嗯 -大张旗鼓 -" -# - -! -& -' -$ -% -* -+ -( -) -她们 -. -/ -, -︿ -- -3 -2 -不止 -1 -0 -7 -6 -这里 -5 -4 -颇 -; -: -9 -如此 -8 -? -极度 -> -= -首先 -< -也罢 -@ -A -当庭 -见 -更 -不少 -] -\ -_ -^ -替 -[ -大大 -到目前为止 -开始 -` -三番两次 -这么 -大多 -结果 -权时 -喂 -如下 -矣 -如上 -喀 -~ -喏 -| -放量 -当年 -不对 -顷刻 -是 -岂非 -看 -哪边 -立马 -乘势 -何况 -啥 -这个 -啦 -率尔 -那种 -仍然 -相对而言 -啐 -累年 -啊 -开外 -现在 -大概 -依照 -· -总而言之 -乃至 -比如说 -多次 -切切 -不亦乐乎 -顺 -顷 -呆呆地 -略为 -更为 -倍加 -不定 -之后 -着 -风雨无阻 -对于 -唉 -彻夜 -! -# -来得及 -% -哦 -$ -的 -& -) -哪 -( -+ -* -哩 -, -0 -1 -2 -这么些 -3 -4 -5 -不至于 -6 -7 -8 -这部 -9 -几时 -: -; -< -> -? -哼 -@ -如今 -哇 -哈 -哉 -尽量 -总的说来 -哎 -方才 -乘胜 -极 -倘或 -哗 -被 -[ -出去 -哟 -] -咦 -切不可 -是否 -而况 -加以 -我们 -咳 -咱 -| -} -~ -{ -岂止 -某 -看上去 -和 -如常 -任何 -咋 -具体地说 -凝神 -各自 -千万 -咚 -纯粹 -只限 -恐怕 -呢 -莫非 -虽然 -呸 -本 -即若 -等等 -按照 -呵 -发表 -具体说来 -望 -朝 -不要 -怎样 -呀 -呃 -轰然 -月 -有 -每当 -接连不断 -呜 -最 -呐 -不比 -呕 -呗 -理应 -吧 -那里 -日渐 -以免 -来 -别人 -饱 -吱 -看来 -同 -沙沙 -后 -趁势 -切莫 -尽心尽力 -各 -切勿 -¥ -白 -� -保管 -吗 -此中 -默然 -向 -吓 -的确 -让 -末##末 -不然的话 -趁早 -论 -挨门挨户 -挨次 -保险 -莫若 -嗡嗡 -是的 -请勿 -该 -消息 -一定 -刚才 -略微 -亲眼 -差不多 -倘若 -说 -— -起来 -’ -‘ -” -“ -惯常 -何止 -… -到了儿 -再者 -并且 -趁着 -如何 -不由得 -怎么样 -旁人 -由 -不管 -甭 -哪里 -甫 -用 -倒不如说 -均 -长此下去 -多少 -匆匆 -虽则 -既然 -纵使 -呼哧 -联袂 -或许 -俺们 -倘然 -只是 -不如 -更进一步 -不仅...而且 -极为 -尽然 -略 -长期以来 -不止一次 -不妨 -表示 -地 -较比 -在 -从古到今 -尽如人意 -确实 -川流不息 -并没有 -纵令 -恰巧 -四 -无宁 -近年来 -因 -起首 -, -方 -大略 -将要 -极了 -但是 -固 -屡屡 -到底 -在下 -猛然间 -很多 -趁机 -。 -越是 -、 -  -》 -《 -〉 -〈 -不外 -使得 -既 -【 -】 -不大 -以便 -当下 -它们 -如上所述 -每个 -彼此 -达旦 -当口儿 -看起来 -或多或少 -当中 -据我所知 -遵照 -固然 -策略地 -换言之 -缕缕 -居然 -连日来 -比照 -起见 -嘎 -因而 -嘘 -不论 -嘛 -沿着 -恍然 -亲身 -故 -哼唷 -本着 -除外 -论说 -简直 -大家 -嘻 -嘿 -敢 -不怎么 -如次 -亲手 -顿时 -顺着 -叮当 -敞开儿 -冲 -跟 -上来 -拿 -不曾 -着呢 -背靠背 -多多益善 -冒 -他人 -下来 -何须 -内 -尚且 -很少 -不仅仅 -出 -顷刻间 - -趁 -恰似 -敢情 -率然 -凭 -每每 -几 -他们 -成为 -尽快 -把 -当即 -据悉 -前者 - [ -处处 - ] -断然 -绝非 -总的来看 -分期 -我们 -每次 -从优 -常言说得好 -由于 -难说 -从今以后 -所 -比如 -才 -精光 -起 -于是 -赶 -平素 -打 -一样 -长线 -每时每刻 -不择手段 -共 -拦腰 -其 -屡次 -当然 -宁愿 -举凡 -八 -六 -兮 -十分 -我 -串行 -或 -牢牢 -成心 -光 -与此同时 -哈哈 -换句话说 -除非 -以至于 -况且 -独 -除却 -反手 -成年 -哎呀 -这儿 -累次 -论坛 -诚然 -怎么办 -决不 -自各儿 -这么样 -除去 -由此可见 -像 -绝顶 -社会主义 -不外乎 -毋宁 -背地里 -.. -据 -此间 -哪儿 -为什么 -倍 -那会儿 -来不及 -迫于 -不起 -可能 -千万千万 -// -正如 -借 -倘 -究竟 -及其 -据称 -谁 -敢于 -伙同 -朝着 -临到 -哎哟 -即将 -尽心竭力 -已经 -亲口 -出来 -另一个 --- -诸位 -那时 -即是说 -按 -谨 -此外 -何时 -然后 -勃然 -奋勇 -仅仅 -故而 -历 -乌乎 -主要 -借以 -去 -间或 -方能 -并没 -除此之外 -过 -马上 -迄 -传说 -恰恰 -还 -这 -连 -近 -用户名 -这边 -及 -从不 -边 -又 -您 -连同 -较 -怎么 -互相 -但愿 -可 -你们 -凑巧 -叫 -路经 -另 -起先 -二话没说 -之一 -化 -连连 -当儿 -各式 -其后 -独自 -照 -趁便 -甚至 -那末 -该当 -呜呼 -的话 -挨着 -有的 -够瞧的 -何乐而不为 -然 -单 -进去 -无论 -怎 -据说 -综上所述 -抽冷子 -才能 -怕 -千 -极大 -恰逢 -半 -而是 -即 -不但...而且 -倘使 -怪 -本身 -乘隙 -焉 -反倒 -理当 -交口 -基本上 -认为 -这会儿 -不迭 -倍感 -老是 -┃ -反之 -哪怕 -除此而外 -顶多 -而又 -不时 -自家 -啊呀 -发生 -哗啦 -多年来 -那边 -那么些 -完全 -某个 -起初 -应该 -进一步 -不是 -日见 -而后 -例如 -切 -多多 -较之 -那样 -齐 -不料 -则 -刚 -初 -乘虚 -能够 -从严 -故意 -啊哟 -别 -从中 -分头 -较为 -到 ->> -假如 -甚么 -作为 -何必 -不过 -啊哈 -某些 -不日 -正在 -一来 -三番五次 -为何 -进而 -通过 -若非 -日益 -倒不如 -逢 -立地 -不只 -一般 -豁然 -将近 -不可开交 -就算 -全力 -... -各位 -基本 -不拘 -隔夜 -不胜 -除开 -暗中 -腾 -而外 -宁可 -除此以外 -单单 -何处 -几度 -吧哒 -即便 -那 -本人 -己 -已 -趁热 -人民 -不能 -并肩 -根据 -也好 -什么样 -扑通 -即使 -与否 -高低 -何妨 -简言之 -如期 -不管怎样 -将才 -大约 -其次 -满 -除了 -都 -标题 -难道 -不可 -至 -陡然 -为了 -及至 -虽说 -臭 -嘎嘎 -不同 -自 -大体上 -而 -还要 -老 -者 -人人 -比方 -简而言之 -谁知 -屡 -应当 -人家 -单纯 -继之 -这么点儿 -八成 -光是 -忽然 -从头 -尽 -哪年 -竟然 -就 -省得 -从此以后 -不力 -各个 -充其极 -次第 -尽管如此 -偶而 -甚而 -截然 -接着 -极端 -嘎登 -皆可 -这就是说 -将 -从早到晚 -好在 -取道 -这种 -上去 -碰巧 -紧接着 -不单 -一旦 -纵 -纯 -各种 -连袂 -什么 -绝 -给 -后来 -暗自 -经 -不然 -从重 -果真 -要不是 -并排 -自己 -岂 -差一点 -能 -藉以 -不惟 -此后 -待到 -哪些 -其他 -毫无 -连声 -归 -当 -几经 -九 -也 -乘 -从小 -乒 -彼 -乎 -刚好 -么 -如若 -之 -默默地 -乃 -为 -得起 -借此 -汝 -然而 -从此 -按时 -反倒是 -临 -个 -从无到有 -中 -反之则 -弗 -姑且 -与其 -哪个 -反而 -常言道 -不再 -大抵 -且 -意思 -三 -上 -不 -与 -一 -七 -两者 -不经意 -等到 -必 -来着 -尽管 -知道 -任 -以 -似的 -个人 -其余 -们 -莫 -当着 -他 -就是说 -沿 -快 -仅 -没 -来看 -仍 -从 -往 -大凡 -而言 -待 -当真 -因此 -很 -据此 -那么样 -纵然 -得 -互 -五 -—— -必须 -向着 -或是 -毕竟 -了 -二 -于 -可以 -你 -要不 -当场 -那儿 -来讲 -局外 -但 -并 -赶快 -需要 -即令 -活 -不特 -然则 -何 -不独 -一则 -何苦 -猛然 -传 -设使 -经过 -至于 -老老实实 -截至 -譬如 -一切 -要么 -别的 -常 -按期 -何尝 -动不动 -因为 -会 -按说 -如果 -带 -自从 -宁肯 -不光 -之类 -尽可能 -老大 -成年累月 -尔后 -俺 -从宽 -朋友 -就此 -粗 -归根结底 -据实 -不免 -若 -不成 -不仅仅是 -长话短说 -设若 -慢说 -诸如 -便 -以至 -以致 -之所以 -前后 -果然 -共总 -时候 -依 -鄙人 -大 -等 -大面儿上 -年复一年 -打开天窗说亮话 -假若 -快要 -而且 -此刻 -假使 -陈年 -另方面 -到处 -大体 -云云 -全然 -为着 -每逢 -多 -只要 -常常 -日臻 -得天独厚 -另外 -并无 -届时 -她 -尔等 -不消 -如其 -反之亦然 -奇 -方法 -奈 -必定 -第 -岂但 -古来 -啪达 -顷刻之间 -别说 -传闻 -总的来说 -非徒 -非得 -可是 -不可抗拒 -继而 -如 -凭借 -略加 -绝对 -理该 -喔唷 -仍旧 -以及 -到头来 -抑或 -一方面 -只有 -咱们 -从新 -这样 -不得已 -管 -自个儿 -呼啦 -必将 -而论 -于是乎 -其一 -此 -看样子 -全身心 -有人 -按理 -也许 -打从 -照着 -觉得 -不了 -不得 -关于 -恰恰相反 -其中 -动辄 -立刻 -倒是 -毫无例外 -从古至今 -可见 -莫不 -亲自 -经常 -不得了 -不必 -有些 -挨个 -不仅 -进来 -大事 -全年 -总之 -当头 -若是 -竟 -要不然 -分期分批 -如此等等 -那么 -其二 -立 -不会 -不怕 -不问 -每 -没有 -公然 -比 -还有 -不限 -偏偏 -故此 -弹指之间 -那些 -窃 -叮咚 -而已 -到头 -不但 -随着 -不得不 -非常 -非但 -殆 -如前所述 -从来 -近几年来 -近来 -莫如 -谢谢 -比起 -穷年累月 -怪不得 -白白 -反过来 -除 -全都 -全部 -从速 -上下 -哪样 -从未 -不能不 -那个 -迟早 -不知不觉 -挨家挨户 -多多少少 -几番 -有关 -连日 -阿 -这时 -即或 -它 -哪天 -宁 -地方 -就是 -乘机 -常言说 -不下 -定 -昂然 -毫无保留地 -屡次三番 -充其量 -另一方面 -既...又 -瑟瑟 -或者 -反过来说 -立时 -再说 -嘿嘿 -过于 -零 -就地 -极其 -随 -起头 -离 -梆 -漫说 -大举 -接下来 -忽地 -难得 -格外 -从而 -还是 -对 -既是 -可好 -不满 -充分 -并非 -鉴于 -目前 -要是 -虽 -一下 -自身 -任凭 -几乎 -靠 -一个 -否则 -砰 -三天两头 -难怪 -所以 -罢了 -大致 -从轻 -不巧 -加之 -大不了 -归根到底 -偶尔 -二话不说 -大都 -愤然 -多年前 -蛮 -一些 -楼主 -日复一日 -即刻 -其它 -决非 -恰如 -不已 -加上 -具体来说 -直到 -多亏 -隔日 -暗地里 -挨门逐户 -恰好 -其实 -万一 -基于 -尽早 -刚巧 -概 -主楼 -同时 -更加 -绝不 -除此 -不常 -另行 -急匆匆 -话说 -存心 -极力 \ No newline at end of file diff --git a/etc/stopWordsEN.txt b/etc/stopWordsEN.txt deleted file mode 100644 index d3bdbff..0000000 --- a/etc/stopWordsEN.txt +++ /dev/null @@ -1,891 +0,0 @@ -'d -'ll -'m -'re -'s -'t -'ve -ZT -ZZ -a -a's -able -about -above -abst -accordance -according -accordingly -across -act -actually -added -adj -adopted -affected -affecting -affects -after -afterwards -again -against -ah -ain't -all -allow -allows -almost -alone -along -already -also -although -always -am -among -amongst -an -and -announce -another -any -anybody -anyhow -anymore -anyone -anything -anyway -anyways -anywhere -apart -apparently -appear -appreciate -appropriate -approximately -are -area -areas -aren -aren't -arent -arise -around -as -aside -ask -asked -asking -asks -associated -at -auth -available -away -awfully -b -back -backed -backing -backs -be -became -because -become -becomes -becoming -been -before -beforehand -began -begin -beginning -beginnings -begins -behind -being -beings -believe -below -beside -besides -best -better -between -beyond -big -biol -both -brief -briefly -but -by -c -c'mon -c's -ca -came -can -can't -cannot -cant -case -cases -cause -causes -certain -certainly -changes -clear -clearly -co -com -come -comes -concerning -consequently -consider -considering -contain -containing -contains -corresponding -could -couldn't -couldnt -course -currently -d -date -definitely -describe -described -despite -did -didn't -differ -different -differently -discuss -do -does -doesn't -doing -don't -done -down -downed -downing -downs -downwards -due -during -e -each -early -ed -edu -effect -eg -eight -eighty -either -else -elsewhere -end -ended -ending -ends -enough -entirely -especially -et -et-al -etc -even -evenly -ever -every -everybody -everyone -everything -everywhere -ex -exactly -example -except -f -face -faces -fact -facts -far -felt -few -ff -fifth -find -finds -first -five -fix -followed -following -follows -for -former -formerly -forth -found -four -from -full -fully -further -furthered -furthering -furthermore -furthers -g -gave -general -generally -get -gets -getting -give -given -gives -giving -go -goes -going -gone -good -goods -got -gotten -great -greater -greatest -greetings -group -grouped -grouping -groups -h -had -hadn't -happens -hardly -has -hasn't -have -haven't -having -he -he's -hed -hello -help -hence -her -here -here's -hereafter -hereby -herein -heres -hereupon -hers -herself -hes -hi -hid -high -higher -highest -him -himself -his -hither -home -hopefully -how -howbeit -however -hundred -i -i'd -i'll -i'm -i've -id -ie -if -ignored -im -immediate -immediately -importance -important -in -inasmuch -inc -include -indeed -index -indicate -indicated -indicates -information -inner -insofar -instead -interest -interested -interesting -interests -into -invention -inward -is -isn't -it -it'd -it'll -it's -itd -its -itself -j -just -k -keep -keeps -kept -keys -kg -kind -km -knew -know -known -knows -l -large -largely -last -lately -later -latest -latter -latterly -least -less -lest -let -let's -lets -like -liked -likely -line -little -long -longer -longest -look -looking -looks -ltd -m -made -mainly -make -makes -making -man -many -may -maybe -me -mean -means -meantime -meanwhile -member -members -men -merely -mg -might -million -miss -ml -more -moreover -most -mostly -mr -mrs -much -mug -must -my -myself -n -n't -na -name -namely -nay -nd -near -nearly -necessarily -necessary -need -needed -needing -needs -neither -never -nevertheless -new -newer -newest -next -nine -ninety -no -nobody -non -none -nonetheless -noone -nor -normally -nos -not -noted -nothing -novel -now -nowhere -number -numbers -o -obtain -obtained -obviously -of -off -often -oh -ok -okay -old -older -oldest -omitted -on -once -one -ones -only -onto -open -opened -opening -opens -or -ord -order -ordered -ordering -orders -other -others -otherwise -ought -our -ours -ourselves -out -outside -over -overall -owing -own -p -page -pages -part -parted -particular -particularly -parting -parts -past -per -perhaps -place -placed -places -please -plus -point -pointed -pointing -points -poorly -possible -possibly -potentially -pp -predominantly -present -presented -presenting -presents -presumably -previously -primarily -probably -problem -problems -promptly -proud -provides -put -puts -q -que -quickly -quite -qv -r -ran -rather -rd -re -readily -really -reasonably -recent -recently -ref -refs -regarding -regardless -regards -related -relatively -research -respectively -resulted -resulting -results -right -room -rooms -run -s -said -same -saw -say -saying -says -sec -second -secondly -seconds -section -see -seeing -seem -seemed -seeming -seems -seen -sees -self -selves -sensible -sent -serious -seriously -seven -several -shall -she -she'll -shed -shes -should -shouldn't -show -showed -showing -shown -showns -shows -side -sides -significant -significantly -similar -similarly -since -six -slightly -small -smaller -smallest -so -some -somebody -somehow -someone -somethan -something -sometime -sometimes -somewhat -somewhere -soon -sorry -specifically -specified -specify -specifying -state -states -still -stop -strongly -sub -substantially -successfully -such -sufficiently -suggest -sup -sure -t -t's -take -taken -taking -tell -tends -th -than -thank -thanks -thanx -that -that'll -that's -that've -thats -the -their -theirs -them -themselves -then -thence -there -there'll -there's -there've -thereafter -thereby -thered -therefore -therein -thereof -therere -theres -thereto -thereupon -these -they -they'd -they'll -they're -they've -theyd -theyre -thing -things -think -thinks -third -this -thorough -thoroughly -those -thou -though -thoughh -thought -thoughts -thousand -three -throug -through -throughout -thru -thus -til -tip -to -today -together -too -took -toward -towards -tried -tries -truly -try -trying -ts -turn -turned -turning -turns -twice -two -u -un -under -unfortunately -unless -unlike -unlikely -until -unto -up -upon -ups -us -use -used -useful -usefully -usefulness -uses -using -usually -uucp -v -value -various -very -via -viz -vol -vols -vs -w -want -wanted -wanting -wants -was -wasn't -way -ways -we -we'd -we'll -we're -we've -wed -welcome -well -wells -went -were -weren't -what -what'll -what's -whatever -whats -when -whence -whenever -where -where's -whereafter -whereas -whereby -wherein -wheres -whereupon -wherever -whether -which -while -whim -whither -who -who'll -who's -whod -whoever -whole -whom -whomever -whos -whose -why -widely -will -willing -wish -with -within -without -won't -wonder -words -work -worked -working -works -world -would -wouldn't -www -x -y -year -years -yes -yet -you -you'd -you'll -you're -you've -youd -young -younger -youngest -your -youre -yours -yourself -yourselves -z -zero -zt -zz \ No newline at end of file diff --git a/foreground b/foreground deleted file mode 100644 index 8e5495d..0000000 --- a/foreground +++ /dev/null @@ -1,542 +0,0 @@ -{ - "commentUrl":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "channel":{ - "type":"keyword" - }, - "readCount":{ - "type":"long" - }, - "quoteCount":{ - "type":"long" - }, - "brand":{ - "analyzer":"ik_smart", - "term_vector":"yes", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "brandId":{ - "type":"keyword" - }, - "createTimeStr":{ - "type":"keyword" - }, - "authornickname":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "contentSimHash":{ - "type":"keyword" - }, - "crawlDay":{ - "type":"long" - }, - "titleSimHash":{ - "type":"keyword" - }, - "commentId":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "originalPhrase":{ - "type":"keyword" - }, - "forwardContent":{ - "analyzer":"ik_smart", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "finalPhrase":{ - "type":"keyword" - }, - "availability":{ - "type":"integer" - }, - "forwardUserId":{ - "type":"keyword" - }, - "forwardUserType":{ - "type":"integer" - }, - "forwardUserUrl":{ - "type":"keyword" - }, - "forwardAvatar":{ - "type":"keyword" - }, - "forwardImgs":{ - "type":"keyword" - }, - "forwardPostSource":{ - "type":"keyword" - }, - "forwardAttitudesCount":{ - "type":"long" - }, - "forwardCommentsCount":{ - "type":"long" - }, - "forwardQuoteCount":{ - "type":"long" - }, - "forwardPubTime":{ - "type":"long" - }, - "titleLength":{ - "type":"long" - }, - "forwardAuthor":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "sysAbstract":{ - "analyzer":"ik_smart", - "type":"text" - }, - "forwardUrl":{ - "type":"keyword" - }, - "createDate":{ - "type":"date" - }, - "docType":{ - "type":"keyword" - }, - "getSource":{ - "type":"keyword" - }, - "dataCount":{ - "type":"integer" - }, - "primary":{ - "type":"integer" - }, - "cate":{ - "type":"keyword" - }, - "sex":{ - "type":"keyword" - }, - "collectCount":{ - "type":"long" - }, - "crawlDate":{ - "type":"date" - }, - "avatar":{ - "type":"keyword" - }, - "url":{ - "type":"keyword" - }, - "skuProperties":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "expression":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "hashTag":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "places":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "opinions":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "hlKeywords":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "createTime":{ - "type":"long" - }, - "contentLength":{ - "type":"integer" - }, - "pubTime":{ - "type":"long" - }, - "fansCount":{ - "type":"keyword" - }, - "language":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "source":{ - "type":"keyword" - }, - "enSource":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "pictureList":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "userUrl":{ - "type":"keyword" - }, - "videoUrl":{ - "type":"keyword" - }, - "contentTag":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "author":{ - "type":"keyword" - }, - "authorId":{ - "type":"keyword" - }, - "authorLevel":{ - "type":"keyword" - }, - "sysSentiment":{ - "type":"double" - }, - "price":{ - "type":"double" - }, - "nomorprice":{ - "type":"double" - }, - "attitudesCount":{ - "type":"keyword" - }, - "createDay":{ - "type":"long" - }, - "postId":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "pubDate":{ - "type":"date" - }, - "sysKeywords":{ - "type":"keyword" - }, - "crawlTime":{ - "type":"long" - }, - "userType":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "projectName":{ - "type":"keyword" - }, - "lastModifiedTime":{ - "type":"long" - }, - "productParameter":{ - "analyzer":"ik_smart", - "term_vector":"yes", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "docId":{ - "type":"keyword" - }, - "commentScore":{ - "type":"long" - }, - "urlHash":{ - "type":"keyword" - }, - "_id_":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "title":{ - "analyzer":"ik_smart", - "term_vector":"yes", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "pageTranspondCount":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "pageCommentCount":{ - "type":"text", - "fields":{ - "keyword":{ - "ignore_above":256, - "type":"keyword" - } - } - }, - "content":{ - "analyzer":"ik_smart", - "term_vector":"yes", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "pubDay":{ - "type":"long" - }, - "pubTimeStr":{ - "type":"keyword" - }, - "postSource":{ - "type":"keyword" - }, - "crawlTimeStr":{ - "type":"keyword" - }, - "postCount":{ - "type":"keyword" - }, - "friendsCount":{ - "type":"keyword" - }, - "commentsCount":{ - "type":"long" - }, - "favorCnt":{ - "type":"long" - }, - "viewCnt":{ - "type":"long" - }, - "downCnt":{ - "type":"long" - }, - "sign":{ - "type":"keyword" - }, - "isVip":{ - "type":"integer" - }, - "forumScore":{ - "type":"keyword" - }, - "impression":{ - "type":"keyword" - }, - "promotionInfo":{ - "type":"keyword" - }, - "smallImgs":{ - "type":"keyword" - }, - "listBrand":{ - "analyzer":"ik_smart", - "term_vector":"yes", - "type":"text", - "fields":{ - "shingles":{ - "analyzer":"shingle_analyzer", - "type":"text" - } - } - }, - "firstListBrand":{ - "type":"keyword" - }, - "secondListBrand":{ - "type":"keyword" - }, - "threeListBrand":{ - "type":"keyword" - }, - "fourListBrand":{ - "type":"keyword" - }, - "fiveListBrand":{ - "type":"keyword" - }, - "area":{ - "type":"keyword" - }, - "location":{ - "type":"keyword" - }, - "country":{ - "type":"keyword" - }, - "province":{ - "type":"keyword" - }, - "city":{ - "type":"keyword" - }, - "age":{ - "type":"keyword" - }, - "egc":{ - "type":"integer" - }, - "pgc":{ - "type":"integer" - }, - "ugc":{ - "type":"integer" - }, - "translateTitle":{ - "type":"keyword" - }, - "translateContent":{ - "type":"keyword" - }, - "filePath":{ - "type":"keyword" - }, - "resolution":{ - "type":"keyword" - }, - "extension":{ - "type":"keyword" - }, - "thumbnails":{ - "type":"keyword" - }, - "videoTime":{ - "type":"keyword" - }, - "isDownload":{ - "type":"keyword" - }, - "crawlDataFlag":{ - "type":"keyword" - }, - "attr":{ - "type":"keyword" - }, - "pageType":{ - "type":"keyword" - }, - "siteId":{ - "type":"keyword" - }, - "otherSourceJson":{ - "type":"keyword" - } -} \ No newline at end of file diff --git a/hs_err_pid11192.log b/hs_err_pid11192.log deleted file mode 100644 index 18bc02c..0000000 --- a/hs_err_pid11192.log +++ /dev/null @@ -1,488 +0,0 @@ -# -# A fatal error has been detected by the Java Runtime Environment: -# -# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000003387a7a, pid=11192, tid=12996 -# -# JRE version: Java(TM) SE Runtime Environment (8.0_65-b17) (build 1.8.0_65-b17) -# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.65-b01 mixed mode windows-amd64 compressed oops) -# Problematic frame: -# J 7910 C2 net.sf.json.util.JSONUtils.quote(Ljava/lang/String;)Ljava/lang/String; (513 bytes) @ 0x0000000003387a7a [0x0000000003387640+0x43a] -# -# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows -# -# If you would like to submit a bug report, please visit: -# http://bugreport.java.com/bugreport/crash.jsp -# - ---------------- T H R E A D --------------- - -Current thread (0x00000000592f3800): JavaThread "pool-1-thread-155587" [_thread_in_Java, id=12996, stack(0x0000000066d10000,0x0000000066e10000)] - -siginfo: ExceptionCode=0xc0000005, writing address 0x0000000000000074 - -Registers: -RAX=0x00000000e6199128, RBX=0x0000000000000009, RCX=0x0000000000000009, RDX=0x00000000e6196c80 -RSP=0x0000000066e0edd0, RBP=0x00000000e6196c80, RSI=0x000000000000000f, RDI=0x0000000000000074 -R8 =0x0000000000000072, R9 =0x000000000000000a, R10=0x000000000000000a, R11=0x000000000000000a -R12=0x0000000000000000, R13=0x00000000e6196cb8, R14=0x00000000e6196c80, R15=0x00000000592f3800 -RIP=0x0000000003387a7a, EFLAGS=0x0000000000010246 - -Top of Stack: (sp=0x0000000066e0edd0) -0x0000000066e0edd0: 0000000000000001 00000000e614d030 -0x0000000066e0ede0: 0000000084234968 0000000000000000 -0x0000000066e0edf0: 0000000a00000014 00000000e6196ba8 -0x0000000066e0ee00: 0000000088d20600 00000000e6196c80 -0x0000000066e0ee10: 00000000e6196cb8 00000000e6161a50 -0x0000000066e0ee20: 00000000e8c05a20 00000000e6161ad8 -0x0000000066e0ee30: 00000000e6161ae8 000000000000000a -0x0000000066e0ee40: 00000000e6161b48 0000000000000001 -0x0000000066e0ee50: 00000000169516d0 00000000e6199128 -0x0000000066e0ee60: 0000000000000009 00000000e5ed3080 -0x0000000066e0ee70: 000000008430a378 0000000003b305a4 -0x0000000066e0ee80: 0000000000000008 0000000002843189 -0x0000000066e0ee90: 00000000592f3800 0000000000000007 -0x0000000066e0eea0: 000000001695d600 00000000e6162ba8 -0x0000000066e0eeb0: 000000008430a388 00000000e618f568 -0x0000000066e0eec0: 00000000e618f568 00000000e6161c28 - -Instructions: (pc=0x0000000003387a7a) -0x0000000003387a5a: 4c 24 30 44 89 74 24 38 90 e8 38 dd 3f ff cc 45 -0x0000000003387a6a: 33 d2 44 8b f5 41 bb 01 00 00 00 44 89 5c 24 78 -0x0000000003387a7a: 45 85 d2 0f 8e ce 12 00 00 45 8b 5e 0c 41 8b ea -0x0000000003387a8a: 03 6c 24 78 44 8b c5 45 2b c3 49 8b fe 45 85 c0 - - -Register to memory mapping: - -RAX=0x00000000e6199128 is an oop -[C - - klass: {type array char} - - length: 1030 -RBX=0x0000000000000009 is an unknown value -RCX=0x0000000000000009 is an unknown value -RDX=0x00000000e6196c80 is an oop -[C - - klass: {type array char} - - length: 20 -RSP=0x0000000066e0edd0 is pointing into the stack for thread: 0x00000000592f3800 -RBP=0x00000000e6196c80 is an oop -[C - - klass: {type array char} - - length: 20 -RSI=0x000000000000000f is an unknown value -RDI=0x0000000000000074 is an unknown value -R8 =0x0000000000000072 is an unknown value -R9 =0x000000000000000a is an unknown value -R10=0x000000000000000a is an unknown value -R11=0x000000000000000a is an unknown value -R12=0x0000000000000000 is an unknown value -R13=0x00000000e6196cb8 is an oop -[C - - klass: {type array char} - - length: 10 -R14=0x00000000e6196c80 is an oop -[C - - klass: {type array char} - - length: 20 -R15=0x00000000592f3800 is a thread - - -Stack: [0x0000000066d10000,0x0000000066e10000], sp=0x0000000066e0edd0, free space=1019k -Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) -C 0x0000000003387a7a - - ---------------- P R O C E S S --------------- - -Java Threads: ( => current thread ) - 0x0000000059445800 JavaThread "pool-1-thread-155660" [_thread_in_native, id=11268, stack(0x0000000063f80000,0x0000000064080000)] - 0x0000000059444800 JavaThread "pool-1-thread-155659" [_thread_in_native, id=11788, stack(0x00000000675e0000,0x00000000676e0000)] - 0x0000000059444000 JavaThread "pool-1-thread-155658" [_thread_in_native, id=11488, stack(0x0000000065670000,0x0000000065770000)] - 0x0000000059443000 JavaThread "pool-1-thread-155657" [_thread_in_native, id=12644, stack(0x0000000066a00000,0x0000000066b00000)] - 0x000000005a74c000 JavaThread "pool-1-thread-155656" [_thread_in_native, id=13576, stack(0x000000005e120000,0x000000005e220000)] - 0x000000005a74b000 JavaThread "pool-1-thread-155655" [_thread_in_native, id=11812, stack(0x0000000064400000,0x0000000064500000)] - 0x000000005a74a800 JavaThread "pool-1-thread-155654" [_thread_in_native, id=11564, stack(0x00000000640a0000,0x00000000641a0000)] - 0x000000005a749800 JavaThread "pool-1-thread-155653" [_thread_in_native, id=12512, stack(0x0000000066fb0000,0x00000000670b0000)] - 0x000000005a749000 JavaThread "pool-1-thread-155652" [_thread_in_native, id=4372, stack(0x0000000067280000,0x0000000067380000)] - 0x00000000614c2800 JavaThread "pool-1-thread-155651" [_thread_in_native, id=12360, stack(0x0000000066bb0000,0x0000000066cb0000)] - 0x00000000614c2000 JavaThread "pool-1-thread-155650" [_thread_in_native, id=12396, stack(0x00000000647c0000,0x00000000648c0000)] - 0x00000000614c0800 JavaThread "pool-1-thread-155649" [_thread_in_native, id=12648, stack(0x00000000667d0000,0x00000000668d0000)] - 0x00000000614c1000 JavaThread "pool-1-thread-155648" [_thread_in_native, id=10804, stack(0x0000000063520000,0x0000000063620000)] - 0x00000000614bf800 JavaThread "pool-1-thread-155647" [_thread_in_native, id=9320, stack(0x00000000662e0000,0x00000000663e0000)] - 0x000000005925f000 JavaThread "pool-1-thread-155646" [_thread_in_native, id=10012, stack(0x00000000668e0000,0x00000000669e0000)] - 0x000000005a8c1000 JavaThread "pool-1-thread-155645" [_thread_in_native, id=12232, stack(0x000000005c880000,0x000000005c980000)] - 0x000000005a8c0000 JavaThread "pool-1-thread-155644" [_thread_in_native, id=11036, stack(0x0000000065790000,0x0000000065890000)] - 0x0000000061a0f000 JavaThread "pool-1-thread-155643" [_thread_in_native, id=12804, stack(0x0000000065220000,0x0000000065320000)] - 0x0000000061a0f800 JavaThread "pool-1-thread-155642" [_thread_in_native, id=10516, stack(0x0000000063e50000,0x0000000063f50000)] - 0x00000000595af000 JavaThread "pool-1-thread-155641" [_thread_in_native, id=5680, stack(0x0000000067410000,0x0000000067510000)] - 0x000000005f51c800 JavaThread "pool-1-thread-155640" [_thread_in_native, id=1580, stack(0x0000000066660000,0x0000000066760000)] - 0x000000005f51d800 JavaThread "pool-1-thread-155639" [_thread_in_native, id=13152, stack(0x0000000064560000,0x0000000064660000)] - 0x00000000613e3000 JavaThread "pool-1-thread-155638" [_thread_in_native, id=4812, stack(0x0000000064fb0000,0x00000000650b0000)] - 0x000000005a66b800 JavaThread "pool-1-thread-155637" [_thread_in_native, id=7984, stack(0x0000000065af0000,0x0000000065bf0000)] - 0x000000005a66e000 JavaThread "pool-1-thread-155636" [_thread_in_native, id=7372, stack(0x0000000063420000,0x0000000063520000)] - 0x000000005f198800 JavaThread "pool-1-thread-155635" [_thread_in_native, id=14024, stack(0x0000000059df0000,0x0000000059ef0000)] - 0x000000005f198000 JavaThread "pool-1-thread-155634" [_thread_in_native, id=11336, stack(0x0000000063a20000,0x0000000063b20000)] - 0x000000005f197000 JavaThread "pool-1-thread-155633" [_thread_in_native, id=5368, stack(0x0000000065c80000,0x0000000065d80000)] - 0x000000005f196800 JavaThread "pool-1-thread-155632" [_thread_in_native, id=9204, stack(0x0000000063b20000,0x0000000063c20000)] - 0x000000005f195800 JavaThread "pool-1-thread-155631" [_thread_in_native, id=13188, stack(0x0000000064280000,0x0000000064380000)] - 0x000000005f3bc000 JavaThread "pool-1-thread-155630" [_thread_in_native, id=12356, stack(0x00000000632f0000,0x00000000633f0000)] - 0x000000005f3b9000 JavaThread "pool-1-thread-155629" [_thread_in_native, id=13956, stack(0x0000000065400000,0x0000000065500000)] - 0x000000005f3ba000 JavaThread "pool-1-thread-155628" [_thread_in_native, id=10444, stack(0x00000000650d0000,0x00000000651d0000)] - 0x000000005f3ba800 JavaThread "pool-1-thread-155627" [_thread_in_native, id=14120, stack(0x0000000064d60000,0x0000000064e60000)] - 0x000000005f3bb800 JavaThread "pool-1-thread-155626" [_thread_in_native, id=13056, stack(0x0000000064e90000,0x0000000064f90000)] - 0x000000005a8bf800 JavaThread "pool-1-thread-155625" [_thread_in_native, id=8320, stack(0x0000000067140000,0x0000000067240000)] - 0x000000005a8be800 JavaThread "pool-1-thread-155624" [_thread_in_native, id=13424, stack(0x00000000646a0000,0x00000000647a0000)] - 0x000000005a8be000 JavaThread "pool-1-thread-155623" [_thread_in_native, id=9888, stack(0x00000000659d0000,0x0000000065ad0000)] - 0x0000000061a0e000 JavaThread "pool-1-thread-155622" [_thread_in_native, id=13944, stack(0x0000000063c30000,0x0000000063d30000)] - 0x0000000061a0d800 JavaThread "pool-1-thread-155621" [_thread_in_native, id=1724, stack(0x000000005ca30000,0x000000005cb30000)] - 0x0000000061a10800 JavaThread "pool-1-thread-155620" [_thread_in_native, id=13564, stack(0x0000000063920000,0x0000000063a20000)] - 0x000000005a748000 JavaThread "pool-1-thread-155619" [_thread_in_native, id=12484, stack(0x0000000067d40000,0x0000000067e40000)] - 0x000000005a747000 JavaThread "pool-1-thread-155618" [_thread_in_native, id=8672, stack(0x0000000066e20000,0x0000000066f20000)] - 0x000000005a746800 JavaThread "pool-1-thread-155617" [_thread_in_native, id=11936, stack(0x00000000658b0000,0x00000000659b0000)] - 0x00000000591d8800 JavaThread "pool-1-thread-155616" [_thread_in_native, id=6548, stack(0x000000005bbd0000,0x000000005bcd0000)] - 0x00000000591d9800 JavaThread "pool-1-thread-155615" [_thread_in_native, id=13440, stack(0x00000000631b0000,0x00000000632b0000)] - 0x00000000591db800 JavaThread "pool-1-thread-155614" [_thread_in_native, id=12836, stack(0x00000000637b0000,0x00000000638b0000)] - 0x00000000613e2800 JavaThread "pool-1-thread-155613" [_thread_in_native, id=12880, stack(0x0000000062e60000,0x0000000062f60000)] - 0x00000000613e1800 JavaThread "pool-1-thread-155612" [_thread_in_native, id=10768, stack(0x0000000063640000,0x0000000063740000)] - 0x00000000613e1000 JavaThread "pool-1-thread-155611" [_thread_in_native, id=12028, stack(0x0000000066180000,0x0000000066280000)] - 0x00000000613e0000 JavaThread "pool-1-thread-155610" [_thread_in_native, id=8720, stack(0x0000000066050000,0x0000000066150000)] - 0x000000005a66c800 JavaThread "pool-1-thread-155609" [_thread_in_native, id=13884, stack(0x0000000065f20000,0x0000000066020000)] - 0x0000000061403800 JavaThread "pool-1-thread-155608" [_thread_in_native, id=5556, stack(0x0000000064a30000,0x0000000064b30000)] - 0x0000000061403000 JavaThread "pool-1-thread-155607" [_thread_in_native, id=5332, stack(0x0000000065530000,0x0000000065630000)] - 0x0000000061402000 JavaThread "pool-1-thread-155606" [_thread_in_native, id=11120, stack(0x0000000064930000,0x0000000064a30000)] - 0x000000005a66d000 JavaThread "pool-1-thread-155605" [_thread_in_native, id=11876, stack(0x0000000067910000,0x0000000067a10000)] -=>0x00000000592f3800 JavaThread "pool-1-thread-155587" [_thread_in_Java, id=12996, stack(0x0000000066d10000,0x0000000066e10000)] - 0x000000005aa77000 JavaThread "kafka-producer-network-thread | producer-10" daemon [_thread_in_native, id=11016, stack(0x000000006a310000,0x000000006a410000)] - 0x000000005aa76800 JavaThread "kafka-producer-network-thread | producer-6" daemon [_thread_in_native, id=7724, stack(0x000000006a080000,0x000000006a180000)] - 0x000000005f212000 JavaThread "kafka-producer-network-thread | producer-7" daemon [_thread_in_native, id=10984, stack(0x0000000069e80000,0x0000000069f80000)] - 0x000000005f211800 JavaThread "kafka-producer-network-thread | producer-8" daemon [_thread_in_native, id=9288, stack(0x0000000069d20000,0x0000000069e20000)] - 0x000000005f210800 JavaThread "kafka-producer-network-thread | producer-9" daemon [_thread_in_native, id=4044, stack(0x0000000069380000,0x0000000069480000)] - 0x000000005f210000 JavaThread "kafka-producer-network-thread | producer-11" daemon [_thread_in_native, id=8088, stack(0x0000000069b50000,0x0000000069c50000)] - 0x000000005f20f000 JavaThread "kafka-producer-network-thread | producer-5" daemon [_thread_in_native, id=6624, stack(0x0000000069a00000,0x0000000069b00000)] - 0x000000005f20e800 JavaThread "kafka-producer-network-thread | producer-4" daemon [_thread_in_native, id=9060, stack(0x0000000069840000,0x0000000069940000)] - 0x000000005f20d800 JavaThread "kafka-producer-network-thread | producer-3" daemon [_thread_in_native, id=4652, stack(0x00000000695f0000,0x00000000696f0000)] - 0x000000005f20d000 JavaThread "kafka-producer-network-thread | producer-2" daemon [_thread_in_native, id=5828, stack(0x0000000069220000,0x0000000069320000)] - 0x000000005aafe800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=13004, stack(0x000000005fb50000,0x000000005fc50000)] - 0x000000005aafe000 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=12980, stack(0x000000005fe20000,0x000000005ff20000)] - 0x000000005aafd000 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=12528, stack(0x000000005fc50000,0x000000005fd50000)] - 0x000000005aafc800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=13340, stack(0x000000005ea10000,0x000000005eb10000)] - 0x000000005aafb800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=11588, stack(0x000000005e5b0000,0x000000005e6b0000)] - 0x000000005940f800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=8560, stack(0x000000005e840000,0x000000005e940000)] - 0x000000005940f000 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=12668, stack(0x000000005dd40000,0x000000005de40000)] - 0x000000005940e000 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=11184, stack(0x000000005e370000,0x000000005e470000)] - 0x000000005940d800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=13928, stack(0x000000005e6d0000,0x000000005e7d0000)] - 0x000000005940c800 JavaThread "kafka-coordinator-heartbeat-thread | osen930" daemon [_thread_blocked, id=10600, stack(0x000000005e480000,0x000000005e580000)] - 0x000000005940c000 JavaThread "Thread-14" daemon [_thread_blocked, id=13248, stack(0x000000005e020000,0x000000005e120000)] - 0x000000005940b000 JavaThread "Thread-13" daemon [_thread_blocked, id=12024, stack(0x000000005de40000,0x000000005df40000)] - 0x000000005940a800 JavaThread "consumer(osen)ThreadPool-thread-10" [_thread_blocked, id=10632, stack(0x000000005dc30000,0x000000005dd30000)] - 0x0000000059409800 JavaThread "consumer(osen)ThreadPool-thread-9" [_thread_blocked, id=13940, stack(0x000000005db30000,0x000000005dc30000)] - 0x0000000059409000 JavaThread "consumer(osen)ThreadPool-thread-8" [_thread_blocked, id=868, stack(0x000000005da10000,0x000000005db10000)] - 0x0000000059408000 JavaThread "consumer(osen)ThreadPool-thread-7" [_thread_blocked, id=11860, stack(0x000000005d860000,0x000000005d960000)] - 0x0000000059407800 JavaThread "consumer(osen)ThreadPool-thread-6" [_thread_blocked, id=12792, stack(0x000000005bf50000,0x000000005c050000)] - 0x0000000059406800 JavaThread "consumer(osen)ThreadPool-thread-5" [_thread_blocked, id=10988, stack(0x000000005d650000,0x000000005d750000)] - 0x0000000059406000 JavaThread "consumer(osen)ThreadPool-thread-4" [_thread_blocked, id=13664, stack(0x000000005d4d0000,0x000000005d5d0000)] - 0x0000000059405000 JavaThread "consumer(osen)ThreadPool-thread-3" [_thread_blocked, id=13692, stack(0x000000005d280000,0x000000005d380000)] - 0x0000000059404800 JavaThread "consumer(osen)ThreadPool-thread-2" [_thread_blocked, id=14160, stack(0x000000005cfb0000,0x000000005d0b0000)] - 0x0000000059403800 JavaThread "consumer(osen)ThreadPool-thread-1" [_thread_blocked, id=9692, stack(0x000000005d0b0000,0x000000005d1b0000)] - 0x0000000059403000 JavaThread "kafka-producer-network-thread | producer-1" daemon [_thread_in_native, id=11472, stack(0x000000005ce90000,0x000000005cf90000)] - 0x0000000059400800 JavaThread "Abandoned connection cleanup thread" daemon [_thread_blocked, id=11296, stack(0x000000005c380000,0x000000005c480000)] - 0x000000005a278000 JavaThread "RMI RenewClean-[10.9.15.38:58792]" daemon [_thread_blocked, id=1644, stack(0x000000005c180000,0x000000005c280000)] - 0x000000005a277000 JavaThread "RMI Scheduler(0)" daemon [_thread_blocked, id=10724, stack(0x000000005c060000,0x000000005c160000)] - 0x000000005a77d000 JavaThread "RMI TCP Accept-8899" daemon [_thread_in_native, id=11448, stack(0x000000005b8d0000,0x000000005b9d0000)] - 0x000000005a99f000 JavaThread "GC Daemon" daemon [_thread_blocked, id=11644, stack(0x000000005bad0000,0x000000005bbd0000)] - 0x000000005a9e1000 JavaThread "RMI Reaper" [_thread_blocked, id=10580, stack(0x000000005b690000,0x000000005b790000)] - 0x000000005a75e800 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=11744, stack(0x000000005b4c0000,0x000000005b5c0000)] - 0x000000005a3e6800 JavaThread "commons-pool-EvictionTimer" daemon [_thread_blocked, id=11756, stack(0x00000000599f0000,0x0000000059af0000)] - 0x0000000059512800 JavaThread "FileWatchdog" daemon [_thread_blocked, id=1052, stack(0x000000005b240000,0x000000005b340000)] - 0x0000000059134000 JavaThread "Service Thread" daemon [_thread_blocked, id=9960, stack(0x0000000059f00000,0x000000005a000000)] - 0x0000000059122000 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=11916, stack(0x0000000058260000,0x0000000058360000)] - 0x0000000059120000 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=11748, stack(0x0000000059af0000,0x0000000059bf0000)] - 0x000000005911f000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=11656, stack(0x00000000598f0000,0x00000000599f0000)] - 0x00000000590b8800 JavaThread "Monitor Ctrl-Break" daemon [_thread_in_native, id=6948, stack(0x00000000597a0000,0x00000000598a0000)] - 0x000000005734d000 JavaThread "Attach Listener" daemon [_thread_blocked, id=11900, stack(0x0000000058de0000,0x0000000058ee0000)] - 0x00000000587c2800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=12128, stack(0x0000000058c30000,0x0000000058d30000)] - 0x00000000572f0800 JavaThread "Finalizer" daemon [_thread_blocked, id=9544, stack(0x00000000586b0000,0x00000000587b0000)] - 0x00000000572e7800 JavaThread "Reference Handler" daemon [_thread_blocked, id=11512, stack(0x00000000584f0000,0x00000000585f0000)] - 0x000000000246f800 JavaThread "main" [_thread_blocked, id=10752, stack(0x0000000002470000,0x0000000002570000)] - -Other Threads: - 0x00000000572e2000 VMThread [stack: 0x0000000058390000,0x0000000058490000] [id=10932] - 0x0000000059258800 WatcherThread [stack: 0x000000005a130000,0x000000005a230000] [id=10556] - -VM state:not at safepoint (normal execution) - -VM Mutex/Monitor currently owned by a thread: None - -Heap: - PSYoungGen total 271360K, used 261585K [0x00000000d6b80000, 0x00000000f1480000, 0x0000000100000000) - eden space 267776K, 96% used [0x00000000d6b80000,0x00000000e67760c0,0x00000000e7100000) - from space 3584K, 99% used [0x00000000f1100000,0x00000000f147e530,0x00000000f1480000) - to space 10240K, 0% used [0x00000000f0080000,0x00000000f0080000,0x00000000f0a80000) - ParOldGen total 331776K, used 297745K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 89% used [0x0000000084200000,0x00000000964c47e0,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K - -Card table byte_map: [0x0000000011b00000,0x0000000011ee0000] byte_map_base: 0x00000000116df000 - -Marking Bits: (ParMarkBitMap*) 0x000000006bd5a5b0 - Begin Bits: [0x0000000012780000, 0x0000000014678000) - End Bits: [0x0000000014678000, 0x0000000016570000) - -Polling page: 0x0000000000140000 - -CodeCache: size=245760Kb used=22403Kb max_used=24625Kb free=223357Kb - bounds [0x0000000002740000, 0x0000000004080000, 0x0000000011740000] - total_blobs=6414 nmethods=5886 adapters=440 - compilation: enabled - -Compilation events (10 events): -Event: 4641.841 Thread 0x0000000059122000 8717 3 com.mysql.jdbc.Buffer::writeStringNoNull (58 bytes) -Event: 4641.841 Thread 0x0000000059122000 nmethod 8717 0x00000000037ee410 code [0x00000000037ee5a0, 0x00000000037ee968] -Event: 4641.842 Thread 0x0000000059122000 8718 ! 3 com.mysql.jdbc.StringUtils::getBytes (80 bytes) -Event: 4641.842 Thread 0x0000000059122000 nmethod 8718 0x000000000368dc10 code [0x000000000368dec0, 0x000000000368f078] -Event: 4641.923 Thread 0x0000000059122000 8719 3 com.mysql.jdbc.Field::isNativeDateTimeType (51 bytes) -Event: 4641.923 Thread 0x0000000059122000 nmethod 8719 0x00000000030ada90 code [0x00000000030adc00, 0x00000000030ade90] -Event: 4641.923 Thread 0x0000000059122000 8720 ! 3 com.mysql.jdbc.ConnectionImpl::getCharsetNameForIndex (162 bytes) -Event: 4641.924 Thread 0x0000000059122000 nmethod 8720 0x0000000003841c10 code [0x0000000003841ec0, 0x0000000003843468] -Event: 4641.982 Thread 0x0000000059122000 8721 ! 3 com.mysql.jdbc.Util::handleNewInstance (90 bytes) -Event: 4641.983 Thread 0x0000000059122000 nmethod 8721 0x00000000034f7610 code [0x00000000034f7820, 0x00000000034f8218] - -GC Heap History (10 events): -Event: 4683.574 GC heap before -{Heap before GC invocations=3073 (full 49): - PSYoungGen total 267776K, used 267396K [0x00000000d6b80000, 0x00000000f2d80000, 0x0000000100000000) - eden space 263168K, 100% used [0x00000000d6b80000,0x00000000e6c80000,0x00000000e6c80000) - from space 4608K, 91% used [0x00000000f1e00000,0x00000000f2221150,0x00000000f2280000) - to space 10240K, 0% used [0x00000000f2380000,0x00000000f2380000,0x00000000f2d80000) - ParOldGen total 331776K, used 285010K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 85% used [0x0000000084200000,0x0000000095854908,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -Event: 4683.580 GC heap after -Heap after GC invocations=3073 (full 49): - PSYoungGen total 259072K, used 4300K [0x00000000d6b80000, 0x00000000f2800000, 0x0000000100000000) - eden space 254464K, 0% used [0x00000000d6b80000,0x00000000d6b80000,0x00000000e6400000) - from space 4608K, 93% used [0x00000000f2380000,0x00000000f27b3070,0x00000000f2800000) - to space 10240K, 0% used [0x00000000f1400000,0x00000000f1400000,0x00000000f1e00000) - ParOldGen total 331776K, used 286878K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 86% used [0x0000000084200000,0x0000000095a278e8,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -} -Event: 4684.651 GC heap before -{Heap before GC invocations=3074 (full 49): - PSYoungGen total 259072K, used 258764K [0x00000000d6b80000, 0x00000000f2800000, 0x0000000100000000) - eden space 254464K, 100% used [0x00000000d6b80000,0x00000000e6400000,0x00000000e6400000) - from space 4608K, 93% used [0x00000000f2380000,0x00000000f27b3070,0x00000000f2800000) - to space 10240K, 0% used [0x00000000f1400000,0x00000000f1400000,0x00000000f1e00000) - ParOldGen total 331776K, used 286878K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 86% used [0x0000000084200000,0x0000000095a278e8,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -Event: 4684.656 GC heap after -Heap after GC invocations=3074 (full 49): - PSYoungGen total 251392K, used 5007K [0x00000000d6b80000, 0x00000000f2400000, 0x0000000100000000) - eden space 246272K, 0% used [0x00000000d6b80000,0x00000000d6b80000,0x00000000e5c00000) - from space 5120K, 97% used [0x00000000f1400000,0x00000000f18e3cd8,0x00000000f1900000) - to space 10240K, 0% used [0x00000000f1a00000,0x00000000f1a00000,0x00000000f2400000) - ParOldGen total 331776K, used 288899K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 87% used [0x0000000084200000,0x0000000095c20ed8,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -} -Event: 4685.817 GC heap before -{Heap before GC invocations=3075 (full 49): - PSYoungGen total 251392K, used 251279K [0x00000000d6b80000, 0x00000000f2400000, 0x0000000100000000) - eden space 246272K, 100% used [0x00000000d6b80000,0x00000000e5c00000,0x00000000e5c00000) - from space 5120K, 97% used [0x00000000f1400000,0x00000000f18e3cd8,0x00000000f1900000) - to space 10240K, 0% used [0x00000000f1a00000,0x00000000f1a00000,0x00000000f2400000) - ParOldGen total 331776K, used 288899K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 87% used [0x0000000084200000,0x0000000095c20ed8,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -Event: 4685.824 GC heap after -Heap after GC invocations=3075 (full 49): - PSYoungGen total 245760K, used 7062K [0x00000000d6b80000, 0x00000000f2100000, 0x0000000100000000) - eden space 238592K, 0% used [0x00000000d6b80000,0x00000000d6b80000,0x00000000e5480000) - from space 7168K, 98% used [0x00000000f1a00000,0x00000000f20e5b78,0x00000000f2100000) - to space 10240K, 0% used [0x00000000f0d00000,0x00000000f0d00000,0x00000000f1700000) - ParOldGen total 331776K, used 290886K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 87% used [0x0000000084200000,0x0000000095e11a48,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -} -Event: 4686.971 GC heap before -{Heap before GC invocations=3076 (full 49): - PSYoungGen total 245760K, used 245654K [0x00000000d6b80000, 0x00000000f2100000, 0x0000000100000000) - eden space 238592K, 100% used [0x00000000d6b80000,0x00000000e5480000,0x00000000e5480000) - from space 7168K, 98% used [0x00000000f1a00000,0x00000000f20e5b78,0x00000000f2100000) - to space 10240K, 0% used [0x00000000f0d00000,0x00000000f0d00000,0x00000000f1700000) - ParOldGen total 331776K, used 290886K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 87% used [0x0000000084200000,0x0000000095e11a48,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -Event: 4686.982 GC heap after -Heap after GC invocations=3076 (full 49): - PSYoungGen total 235008K, used 3892K [0x00000000d6b80000, 0x00000000f1a80000, 0x0000000100000000) - eden space 230912K, 0% used [0x00000000d6b80000,0x00000000d6b80000,0x00000000e4d00000) - from space 4096K, 95% used [0x00000000f0d00000,0x00000000f10cd3f8,0x00000000f1100000) - to space 9728K, 0% used [0x00000000f1100000,0x00000000f1100000,0x00000000f1a80000) - ParOldGen total 331776K, used 295320K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 89% used [0x0000000084200000,0x0000000096266150,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -} -Event: 4687.957 GC heap before -{Heap before GC invocations=3077 (full 49): - PSYoungGen total 235008K, used 234804K [0x00000000d6b80000, 0x00000000f1a80000, 0x0000000100000000) - eden space 230912K, 100% used [0x00000000d6b80000,0x00000000e4d00000,0x00000000e4d00000) - from space 4096K, 95% used [0x00000000f0d00000,0x00000000f10cd3f8,0x00000000f1100000) - to space 9728K, 0% used [0x00000000f1100000,0x00000000f1100000,0x00000000f1a80000) - ParOldGen total 331776K, used 295320K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 89% used [0x0000000084200000,0x0000000096266150,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -Event: 4687.979 GC heap after -Heap after GC invocations=3077 (full 49): - PSYoungGen total 271360K, used 3577K [0x00000000d6b80000, 0x00000000f1480000, 0x0000000100000000) - eden space 267776K, 0% used [0x00000000d6b80000,0x00000000d6b80000,0x00000000e7100000) - from space 3584K, 99% used [0x00000000f1100000,0x00000000f147e530,0x00000000f1480000) - to space 10240K, 0% used [0x00000000f0080000,0x00000000f0080000,0x00000000f0a80000) - ParOldGen total 331776K, used 297745K [0x0000000084200000, 0x0000000098600000, 0x00000000d6b80000) - object space 331776K, 89% used [0x0000000084200000,0x00000000964c47e0,0x0000000098600000) - Metaspace used 26252K, capacity 26564K, committed 26880K, reserved 1073152K - class space used 2648K, capacity 2774K, committed 2816K, reserved 1048576K -} - -Deoptimization events (10 events): -Event: 1792.695 Thread 0x000000005b019800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000000039c9be8 method=java.util.concurrent.ConcurrentHashMap.replaceNode(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; @ 246 -Event: 2081.914 Thread 0x0000000061af0800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x00000000034f57b4 method=java.util.concurrent.ThreadPoolExecutor.getTask()Ljava/lang/Runnable; @ 149 -Event: 2081.916 Thread 0x000000005ab01800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x00000000034f57b4 method=java.util.concurrent.ThreadPoolExecutor.getTask()Ljava/lang/Runnable; @ 149 -Event: 2081.937 Thread 0x000000005940c000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000000000292214c method=java.util.concurrent.SynchronousQueue.offer(Ljava/lang/Object;)Z @ 22 -Event: 2081.937 Thread 0x000000005940c000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000000003db6aa0 method=java.util.concurrent.SynchronousQueue.offer(Ljava/lang/Object;)Z @ 22 -Event: 2247.851 Thread 0x000000005aa77000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000000036d4dcc method=org.apache.kafka.clients.producer.internals.RecordAccumulator.ready(Lorg/apache/kafka/common/Cluster;J)Lorg/apache/kafka/clients/producer/internals/RecordAccumulator$ReadyCheX@ -Event: 2427.275 Thread 0x000000005a5f3000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000000003898b14 method=org.apache.log4j.helpers.ISO8601DateFormat.format(Ljava/util/Date;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; @ 323 -Event: 3077.371 Thread 0x0000000059404800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000000000336a754 method=org.apache.kafka.common.record.ByteBufferLogInputStream.nextEntry()Lorg/apache/kafka/common/record/ByteBufferLogInputStream$ByteBufferLogEntry; @ 11 -Event: 4055.832 Thread 0x000000005929b800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x00000000034f57b4 method=java.util.concurrent.ThreadPoolExecutor.getTask()Ljava/lang/Runnable; @ 149 -Event: 4055.851 Thread 0x000000005a447800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x00000000034f57b4 method=java.util.concurrent.ThreadPoolExecutor.getTask()Ljava/lang/Runnable; @ 149 - -Internal exceptions (10 events): -Event: 2001.290 Thread 0x000000005aa78800 Exception (0x00000000d7455cd8) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.371 Thread 0x0000000058a1b800 Exception (0x00000000d7ebd308) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.371 Thread 0x0000000058a1b800 Exception (0x00000000d7ebd538) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.371 Thread 0x000000005b018000 Exception (0x00000000d7ed7df8) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.371 Thread 0x000000005b018000 Exception (0x00000000d7ed8028) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.372 Thread 0x0000000058a20800 Exception (0x00000000d7eb2878) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.372 Thread 0x0000000058a20800 Exception (0x00000000d7eb2aa8) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.416 Thread 0x000000005ab01800 Exception (0x00000000d7ee5aa8) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 2001.417 Thread 0x000000005ab01800 Exception (0x00000000d7ee5cd8) thrown at [C:\workspace\8-2-build-windows-amd64-cygwin\jdk8u65\4987\hotspot\src\share\vm\prims\jni.cpp, line 735] -Event: 4689.095 Thread 0x00000000592f3800 Implicit null exception at 0x0000000003387a7a to 0x0000000000000000 - -Events (10 events): -Event: 4688.957 Thread 0x000000005a74a800 Thread added: 0x000000005a74a800 -Event: 4688.957 Thread 0x000000005a74b000 Thread added: 0x000000005a74b000 -Event: 4688.957 Thread 0x000000005a74c000 Thread added: 0x000000005a74c000 -Event: 4688.957 Thread 0x0000000059443000 Thread added: 0x0000000059443000 -Event: 4688.957 Thread 0x0000000059444000 Thread added: 0x0000000059444000 -Event: 4688.957 Thread 0x0000000059444800 Thread added: 0x0000000059444800 -Event: 4688.957 Thread 0x0000000059445800 Thread added: 0x0000000059445800 -Event: 4688.983 Thread 0x000000005f51e000 Thread exited: 0x000000005f51e000 -Event: 4689.016 Thread 0x000000005f51c000 Thread exited: 0x000000005f51c000 -Event: 4689.095 Thread 0x00000000595b0000 Thread exited: 0x00000000595b0000 - - -Dynamic libraries: -0x000000013fa60000 - 0x000000013fa97000 C:\Program Files\Java\jdk1.8.0_65\bin\java.exe -0x0000000077070000 - 0x000000007721a000 C:\Windows\SYSTEM32\ntdll.dll -0x0000000076f50000 - 0x000000007706f000 C:\Windows\system32\kernel32.dll -0x000007fefd030000 - 0x000007fefd09b000 C:\Windows\system32\KERNELBASE.dll -0x000007fefec70000 - 0x000007fefed4b000 C:\Windows\system32\ADVAPI32.dll -0x000007fefe120000 - 0x000007fefe1bf000 C:\Windows\system32\msvcrt.dll -0x000007feff1d0000 - 0x000007feff1ef000 C:\Windows\SYSTEM32\sechost.dll -0x000007fefea70000 - 0x000007fefeb9d000 C:\Windows\system32\RPCRT4.dll -0x0000000076e50000 - 0x0000000076f4a000 C:\Windows\system32\USER32.dll -0x000007fefed50000 - 0x000007fefedb7000 C:\Windows\system32\GDI32.dll -0x000007fefe350000 - 0x000007fefe35e000 C:\Windows\system32\LPK.dll -0x000007fefeba0000 - 0x000007fefec6a000 C:\Windows\system32\USP10.dll -0x000007fefa0f0000 - 0x000007fefa2e4000 C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\COMCTL32.dll -0x000007feff300000 - 0x000007feff371000 C:\Windows\system32\SHLWAPI.dll -0x000007fefea40000 - 0x000007fefea6e000 C:\Windows\system32\IMM32.DLL -0x000007feff1f0000 - 0x000007feff2f9000 C:\Windows\system32\MSCTF.dll -0x000007fefcd20000 - 0x000007fefcd51000 C:\Windows\system32\nvinitx.dll -0x000000006e640000 - 0x000000006e712000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\msvcr100.dll -0x000000006b550000 - 0x000000006bdd9000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\server\jvm.dll -0x000007fef6630000 - 0x000007fef6639000 C:\Windows\system32\WSOCK32.dll -0x000007fefd340000 - 0x000007fefd38d000 C:\Windows\system32\WS2_32.dll -0x000007fefe1c0000 - 0x000007fefe1c8000 C:\Windows\system32\NSI.dll -0x000007fef9b60000 - 0x000007fef9b9b000 C:\Windows\system32\WINMM.dll -0x000007fefbdc0000 - 0x000007fefbdcc000 C:\Windows\system32\VERSION.dll -0x0000000077230000 - 0x0000000077237000 C:\Windows\system32\PSAPI.DLL -0x000000006f0e0000 - 0x000000006f0ef000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\verify.dll -0x000000006f0b0000 - 0x000000006f0d9000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\java.dll -0x0000000071410000 - 0x0000000071433000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\instrument.dll -0x000000006f090000 - 0x000000006f0a6000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\zip.dll -0x000007fefd390000 - 0x000007fefe11a000 C:\Windows\system32\SHELL32.dll -0x000007fefe540000 - 0x000007fefe743000 C:\Windows\system32\ole32.dll -0x000007fefcdf0000 - 0x000007fefcdff000 C:\Windows\system32\profapi.dll -0x000007fef51e0000 - 0x000007fef51fa000 D:\IntelliJ IDEA 2017.2\bin\breakgen64.dll -0x000000006f070000 - 0x000000006f08a000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\net.dll -0x000007fefc590000 - 0x000007fefc5e5000 C:\Windows\system32\mswsock.dll -0x000007fefc580000 - 0x000007fefc587000 C:\Windows\System32\wship6.dll -0x0000000073bf0000 - 0x0000000073bfd000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\management.dll -0x000000006f050000 - 0x000000006f061000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\nio.dll -0x000007fefc5f0000 - 0x000007fefc608000 C:\Windows\system32\CRYPTSP.dll -0x000007fefc2f0000 - 0x000007fefc337000 C:\Windows\system32\rsaenh.dll -0x000007fefce10000 - 0x000007fefce2e000 C:\Windows\system32\USERENV.dll -0x000007fefcc50000 - 0x000007fefcc5f000 C:\Windows\system32\CRYPTBASE.dll -0x000007fef8bf0000 - 0x000007fef8c17000 C:\Windows\system32\IPHLPAPI.DLL -0x000007fef8be0000 - 0x000007fef8beb000 C:\Windows\system32\WINNSI.DLL -0x000007fef89f0000 - 0x000007fef8a08000 C:\Windows\system32\dhcpcsvc.DLL -0x000007fef89d0000 - 0x000007fef89e1000 C:\Windows\system32\dhcpcsvc6.DLL -0x000007fef5540000 - 0x000007fef5566000 C:\Program Files (x86)\Sangfor\SSL\ClientComponent2\SangforNspX64.dll -0x000007fefe270000 - 0x000007fefe347000 C:\Windows\system32\OLEAUT32.dll -0x000007fef9b10000 - 0x000007fef9b25000 C:\Windows\system32\NLAapi.dll -0x000007fef4980000 - 0x000007fef4995000 C:\Windows\system32\napinsp.dll -0x000007fef4950000 - 0x000007fef4969000 C:\Windows\system32\pnrpnsp.dll -0x000007fefc410000 - 0x000007fefc46b000 C:\Windows\system32\DNSAPI.dll -0x000007fef4930000 - 0x000007fef493b000 C:\Windows\System32\winrnr.dll -0x000007fef4920000 - 0x000007fef4930000 C:\Windows\system32\wshbth.dll -0x000007fefbdd0000 - 0x000007fefbf4a000 C:\Program Files (x86)\Sangfor\SSL\ClientComponent\SangforTcpX64.dll -0x000007fefd170000 - 0x000007fefd1ab000 C:\Windows\system32\WINTRUST.dll -0x000007fefceb0000 - 0x000007fefd01d000 C:\Windows\system32\CRYPT32.dll -0x000007fefce00000 - 0x000007fefce0f000 C:\Windows\system32\MSASN1.dll -0x000007fefbdb0000 - 0x000007fefbdb7000 C:\Windows\System32\wshtcpip.dll -0x000007fef5530000 - 0x000007fef5538000 C:\Windows\system32\rasadhlp.dll -0x000007fef8a70000 - 0x000007fef8ac3000 C:\Windows\System32\fwpuclnt.dll -0x00000000713e0000 - 0x0000000071404000 C:\Program Files\Java\jdk1.8.0_65\jre\bin\sunec.dll -0x000007fef4c90000 - 0x000007fef4db5000 C:\Windows\system32\dbghelp.dll - -VM Arguments: -jvm_args: -javaagent:D:\IntelliJ IDEA 2017.2\lib\idea_rt.jar=58787:D:\IntelliJ IDEA 2017.2\bin -Dfile.encoding=UTF-8 -java_command: com.bfd.mf.runstart.RunStartService -java_class_path (initial): C:\Program Files\Java\jdk1.8.0_65\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_65\jre\lib\rt.jar;D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\SocialX_Stream_1.0\cl_stream_service\target\classes;D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\jarlib\dataManager-0.0.1-SNAPSHOT.jar;D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\jarlib\kafka-0.10.jar;D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\jarlib\slf4j-api-1.7.2.jar;D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\jarlib\taskManager-0.0.1-SNAPSHOT.jar;D:\program\SocialX_Stream_1.0-202009 -Launcher Type: SUN_STANDARD - -Environment Variables: -JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65\ -CLASSPATH=.;C:\Program Files\Java\jdk1.8.0_65\\lib\dt.jar;C:\Program Files\Java\jdk1.8.0_65\\lib\tools.jar; -PATH=E:\xshell\;D:\Xftp\;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\OpenVPN\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\AMD\ATI.ACE\Core-Static;C:\Program Files\EmEditor;C:\Program Files\Java\jdk1.8.0_65\\bin;C:\Program Files\Java\jdk1.8.0_65\\jre\bin;D:\Git\cmd;E:\android\android-sdk-windows\platform-tools;E:\android\android-sdk-windows\tools;E:\android\appium;E:\android\appium\node_modules\.bin;%MAVEN_HOME%\bin;E:\android\android-sdk-windows\platform-toolsE:\android\android-sdk-windows\tools;C:\Users\zhicheng.zhang\AppData\Local\Programs\Python\Python37-32\Scripts\;C:\Users\zhicheng.zhang\AppData\Local\Programs\Python\Python37-32\; E:\android\appium\node_modules\.bin;E:\android\appium;D:\maven\apache-maven-3.6.0\bin -USERNAME=zhicheng.zhang -OS=Windows_NT -PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 61 Stepping 4, GenuineIntel - - - ---------------- S Y S T E M --------------- - -OS: Windows 7 , 64 bit Build 7601 (6.1.7601.19135) - -CPU:total 4 (2 cores per cpu, 2 threads per core) family 6 model 61 stepping 4, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx - -Memory: 4k page, physical 8116412k(1661656k free), swap 16230988k(8208248k free) - -vm_info: Java HotSpot(TM) 64-Bit Server VM (25.65-b01) for windows-amd64 JRE (1.8.0_65-b17), built on Oct 6 2015 16:39:20 by "java_re" with MS VC++ 10.0 (VS2010) - -time: Sat Oct 10 22:37:41 2020 -elapsed time: 4689 seconds (0d 1h 18m 9s) - diff --git a/jarlib/BfdCrawlMonitor-1.3.jar b/jarlib/BfdCrawlMonitor-1.3.jar deleted file mode 100644 index 2d6dce4..0000000 Binary files a/jarlib/BfdCrawlMonitor-1.3.jar and /dev/null differ diff --git a/jarlib/BfdRedisTools-2.0.jar b/jarlib/BfdRedisTools-2.0.jar deleted file mode 100644 index 083e182..0000000 Binary files a/jarlib/BfdRedisTools-2.0.jar and /dev/null differ diff --git a/jarlib/BfdSimpleCrypto.jar b/jarlib/BfdSimpleCrypto.jar deleted file mode 100644 index 25168ae..0000000 Binary files a/jarlib/BfdSimpleCrypto.jar and /dev/null differ diff --git a/jarlib/CharsetDetector.jar b/jarlib/CharsetDetector.jar deleted file mode 100644 index abbd5e6..0000000 Binary files a/jarlib/CharsetDetector.jar and /dev/null differ diff --git a/jarlib/Ice.jar b/jarlib/Ice.jar deleted file mode 100644 index 82453f8..0000000 Binary files a/jarlib/Ice.jar and /dev/null differ diff --git a/jarlib/IceGrid.jar b/jarlib/IceGrid.jar deleted file mode 100644 index f30fdfd..0000000 Binary files a/jarlib/IceGrid.jar and /dev/null differ diff --git a/jarlib/MlinkSlice-2.0.jar b/jarlib/MlinkSlice-2.0.jar deleted file mode 100644 index c4af4fd..0000000 Binary files a/jarlib/MlinkSlice-2.0.jar and /dev/null differ diff --git a/jarlib/antlr-2.7.6.jar b/jarlib/antlr-2.7.6.jar deleted file mode 100644 index 3702b64..0000000 Binary files a/jarlib/antlr-2.7.6.jar and /dev/null differ diff --git a/jarlib/asm-1.5.3.jar b/jarlib/asm-1.5.3.jar deleted file mode 100644 index a50aa61..0000000 Binary files a/jarlib/asm-1.5.3.jar and /dev/null differ diff --git a/jarlib/asm-attrs-1.5.3.jar b/jarlib/asm-attrs-1.5.3.jar deleted file mode 100644 index a1a3c5e..0000000 Binary files a/jarlib/asm-attrs-1.5.3.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_configure_3.2.1.jar b/jarlib/bfd_crawler_slice_configure_3.2.1.jar deleted file mode 100644 index d248d3a..0000000 Binary files a/jarlib/bfd_crawler_slice_configure_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_datasaver_3.2.1.jar b/jarlib/bfd_crawler_slice_datasaver_3.2.1.jar deleted file mode 100644 index 0e88eba..0000000 Binary files a/jarlib/bfd_crawler_slice_datasaver_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_deduplicator_3.2.1.jar b/jarlib/bfd_crawler_slice_deduplicator_3.2.1.jar deleted file mode 100644 index 24700f9..0000000 Binary files a/jarlib/bfd_crawler_slice_deduplicator_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_download_3.2.1.jar b/jarlib/bfd_crawler_slice_download_3.2.1.jar deleted file mode 100644 index 5c24c30..0000000 Binary files a/jarlib/bfd_crawler_slice_download_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_jsEngine_3.2.1.jar b/jarlib/bfd_crawler_slice_jsEngine_3.2.1.jar deleted file mode 100644 index d83b430..0000000 Binary files a/jarlib/bfd_crawler_slice_jsEngine_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_kafkaproxy_3.2.1.jar b/jarlib/bfd_crawler_slice_kafkaproxy_3.2.1.jar deleted file mode 100644 index eec6135..0000000 Binary files a/jarlib/bfd_crawler_slice_kafkaproxy_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_loginmanager_3.2.1.jar b/jarlib/bfd_crawler_slice_loginmanager_3.2.1.jar deleted file mode 100644 index 7b43f8b..0000000 Binary files a/jarlib/bfd_crawler_slice_loginmanager_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_msgQueue_3.2.1.jar b/jarlib/bfd_crawler_slice_msgQueue_3.2.1.jar deleted file mode 100644 index bf66f8b..0000000 Binary files a/jarlib/bfd_crawler_slice_msgQueue_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_pageparser_3.2.1.jar b/jarlib/bfd_crawler_slice_pageparser_3.2.1.jar deleted file mode 100644 index 7b03322..0000000 Binary files a/jarlib/bfd_crawler_slice_pageparser_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_resource_3.2.1.jar b/jarlib/bfd_crawler_slice_resource_3.2.1.jar deleted file mode 100644 index 129c089..0000000 Binary files a/jarlib/bfd_crawler_slice_resource_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_scheduler_3.2.1.jar b/jarlib/bfd_crawler_slice_scheduler_3.2.1.jar deleted file mode 100644 index 05df0bf..0000000 Binary files a/jarlib/bfd_crawler_slice_scheduler_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_statistics_3.2.1.jar b/jarlib/bfd_crawler_slice_statistics_3.2.1.jar deleted file mode 100644 index 1ee1998..0000000 Binary files a/jarlib/bfd_crawler_slice_statistics_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_traceservice_3.2.1.jar b/jarlib/bfd_crawler_slice_traceservice_3.2.1.jar deleted file mode 100644 index ced0516..0000000 Binary files a/jarlib/bfd_crawler_slice_traceservice_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_crawler_slice_urlHandler_3.2.1.jar b/jarlib/bfd_crawler_slice_urlHandler_3.2.1.jar deleted file mode 100644 index d85ff14..0000000 Binary files a/jarlib/bfd_crawler_slice_urlHandler_3.2.1.jar and /dev/null differ diff --git a/jarlib/bfd_harpc_service-0.0.1.jar b/jarlib/bfd_harpc_service-0.0.1.jar deleted file mode 100644 index b6e3a56..0000000 Binary files a/jarlib/bfd_harpc_service-0.0.1.jar and /dev/null differ diff --git a/jarlib/c3p0-0.9.1.2.jar b/jarlib/c3p0-0.9.1.2.jar deleted file mode 100644 index 0f42d60..0000000 Binary files a/jarlib/c3p0-0.9.1.2.jar and /dev/null differ diff --git a/jarlib/cglib-2.1_3.jar b/jarlib/cglib-2.1_3.jar deleted file mode 100644 index ddfbdb0..0000000 Binary files a/jarlib/cglib-2.1_3.jar and /dev/null differ diff --git a/jarlib/commons-beanutils-1.7.0.jar b/jarlib/commons-beanutils-1.7.0.jar deleted file mode 100644 index b1b89c9..0000000 Binary files a/jarlib/commons-beanutils-1.7.0.jar and /dev/null differ diff --git a/jarlib/commons-cli-1.2.jar b/jarlib/commons-cli-1.2.jar deleted file mode 100644 index ce4b9ff..0000000 Binary files a/jarlib/commons-cli-1.2.jar and /dev/null differ diff --git a/jarlib/commons-codec-1.4.jar b/jarlib/commons-codec-1.4.jar deleted file mode 100644 index 458d432..0000000 Binary files a/jarlib/commons-codec-1.4.jar and /dev/null differ diff --git a/jarlib/commons-collections-3.1.jar b/jarlib/commons-collections-3.1.jar deleted file mode 100644 index 41e230f..0000000 Binary files a/jarlib/commons-collections-3.1.jar and /dev/null differ diff --git a/jarlib/commons-configuration-1.6.jar b/jarlib/commons-configuration-1.6.jar deleted file mode 100644 index 2d4689a..0000000 Binary files a/jarlib/commons-configuration-1.6.jar and /dev/null differ diff --git a/jarlib/commons-el-1.0.jar b/jarlib/commons-el-1.0.jar deleted file mode 100644 index 608ed79..0000000 Binary files a/jarlib/commons-el-1.0.jar and /dev/null differ diff --git a/jarlib/commons-io-1.4.jar b/jarlib/commons-io-1.4.jar deleted file mode 100644 index 133dc6c..0000000 Binary files a/jarlib/commons-io-1.4.jar and /dev/null differ diff --git a/jarlib/commons-io-2.2.jar b/jarlib/commons-io-2.2.jar deleted file mode 100644 index 84ca565..0000000 Binary files a/jarlib/commons-io-2.2.jar and /dev/null differ diff --git a/jarlib/commons-lang-2.4.jar b/jarlib/commons-lang-2.4.jar deleted file mode 100644 index 532939e..0000000 Binary files a/jarlib/commons-lang-2.4.jar and /dev/null differ diff --git a/jarlib/commons-logging-1.1.1.jar b/jarlib/commons-logging-1.1.1.jar deleted file mode 100644 index 1deef14..0000000 Binary files a/jarlib/commons-logging-1.1.1.jar and /dev/null differ diff --git a/jarlib/commons-logging-api-1.0.4.jar b/jarlib/commons-logging-api-1.0.4.jar deleted file mode 100644 index ade9a13..0000000 Binary files a/jarlib/commons-logging-api-1.0.4.jar and /dev/null differ diff --git a/jarlib/commons-net-1.4.1.jar b/jarlib/commons-net-1.4.1.jar deleted file mode 100644 index 9666a92..0000000 Binary files a/jarlib/commons-net-1.4.1.jar and /dev/null differ diff --git a/jarlib/commons-pool2-2.3.jar b/jarlib/commons-pool2-2.3.jar deleted file mode 100644 index 5219e1c..0000000 Binary files a/jarlib/commons-pool2-2.3.jar and /dev/null differ diff --git a/jarlib/crawler-shard-jdbc-v2.0.1.20150311.jar b/jarlib/crawler-shard-jdbc-v2.0.1.20150311.jar deleted file mode 100644 index 21961c2..0000000 Binary files a/jarlib/crawler-shard-jdbc-v2.0.1.20150311.jar and /dev/null differ diff --git a/jarlib/curator-client-2.7.0.jar b/jarlib/curator-client-2.7.0.jar deleted file mode 100644 index 9e59fe7..0000000 Binary files a/jarlib/curator-client-2.7.0.jar and /dev/null differ diff --git a/jarlib/curator-framework-2.7.0.jar b/jarlib/curator-framework-2.7.0.jar deleted file mode 100644 index 660a2c8..0000000 Binary files a/jarlib/curator-framework-2.7.0.jar and /dev/null differ diff --git a/jarlib/curator-recipes-2.7.0.jar b/jarlib/curator-recipes-2.7.0.jar deleted file mode 100644 index aca3870..0000000 Binary files a/jarlib/curator-recipes-2.7.0.jar and /dev/null differ diff --git a/jarlib/dataManager-0.0.1-SNAPSHOT.jar b/jarlib/dataManager-0.0.1-SNAPSHOT.jar deleted file mode 100644 index f30facd..0000000 Binary files a/jarlib/dataManager-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/jarlib/dom4j-1.6.1.jar b/jarlib/dom4j-1.6.1.jar deleted file mode 100644 index c8c4dbb..0000000 Binary files a/jarlib/dom4j-1.6.1.jar and /dev/null differ diff --git a/jarlib/dom4j-2.0.0-ALPHA-2.jar b/jarlib/dom4j-2.0.0-ALPHA-2.jar deleted file mode 100644 index 95da51b..0000000 Binary files a/jarlib/dom4j-2.0.0-ALPHA-2.jar and /dev/null differ diff --git a/jarlib/ehcache-1.2.3.jar b/jarlib/ehcache-1.2.3.jar deleted file mode 100644 index 0f8cd2c..0000000 Binary files a/jarlib/ehcache-1.2.3.jar and /dev/null differ diff --git a/jarlib/ejb3-persistence-1.0.2.GA.jar b/jarlib/ejb3-persistence-1.0.2.GA.jar deleted file mode 100644 index 32c2266..0000000 Binary files a/jarlib/ejb3-persistence-1.0.2.GA.jar and /dev/null differ diff --git a/jarlib/elastiUtils-0.0.1-SNAPSHOT.jar b/jarlib/elastiUtils-0.0.1-SNAPSHOT.jar deleted file mode 100644 index 5189797..0000000 Binary files a/jarlib/elastiUtils-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/jarlib/ezmorph-1.0.6.jar b/jarlib/ezmorph-1.0.6.jar deleted file mode 100644 index 30fad12..0000000 Binary files a/jarlib/ezmorph-1.0.6.jar and /dev/null differ diff --git a/jarlib/fastdfs_client.jar b/jarlib/fastdfs_client.jar deleted file mode 100644 index ba65353..0000000 Binary files a/jarlib/fastdfs_client.jar and /dev/null differ diff --git a/jarlib/fastdht_client.jar b/jarlib/fastdht_client.jar deleted file mode 100644 index a236e95..0000000 Binary files a/jarlib/fastdht_client.jar and /dev/null differ diff --git a/jarlib/fastjson-1.1.22.jar b/jarlib/fastjson-1.1.22.jar deleted file mode 100644 index d69ed23..0000000 Binary files a/jarlib/fastjson-1.1.22.jar and /dev/null differ diff --git a/jarlib/guava-14.0.1.jar b/jarlib/guava-14.0.1.jar deleted file mode 100644 index 3a3d925..0000000 Binary files a/jarlib/guava-14.0.1.jar and /dev/null differ diff --git a/jarlib/hadoop-core-1.0.4.jar b/jarlib/hadoop-core-1.0.4.jar deleted file mode 100644 index ff541b2..0000000 Binary files a/jarlib/hadoop-core-1.0.4.jar and /dev/null differ diff --git a/jarlib/hamcrest-core-1.3.jar b/jarlib/hamcrest-core-1.3.jar deleted file mode 100644 index 9d5fe16..0000000 Binary files a/jarlib/hamcrest-core-1.3.jar and /dev/null differ diff --git a/jarlib/hanlp-portable-1.6.8.jar b/jarlib/hanlp-portable-1.6.8.jar deleted file mode 100644 index 3b4386a..0000000 Binary files a/jarlib/hanlp-portable-1.6.8.jar and /dev/null differ diff --git a/jarlib/hbase-0.94.9.jar b/jarlib/hbase-0.94.9.jar deleted file mode 100644 index 6f59f53..0000000 Binary files a/jarlib/hbase-0.94.9.jar and /dev/null differ diff --git a/jarlib/hibernate-3.2.1.ga.jar b/jarlib/hibernate-3.2.1.ga.jar deleted file mode 100644 index b600972..0000000 Binary files a/jarlib/hibernate-3.2.1.ga.jar and /dev/null differ diff --git a/jarlib/hibernate-annotations-3.4.0.GA.jar b/jarlib/hibernate-annotations-3.4.0.GA.jar deleted file mode 100644 index 24b1583..0000000 Binary files a/jarlib/hibernate-annotations-3.4.0.GA.jar and /dev/null differ diff --git a/jarlib/hibernate-commons-annotations-3.3.0.ga.jar b/jarlib/hibernate-commons-annotations-3.3.0.ga.jar deleted file mode 100644 index 8284aa2..0000000 Binary files a/jarlib/hibernate-commons-annotations-3.3.0.ga.jar and /dev/null differ diff --git a/jarlib/hibernate-core-3.3.2.GA.jar b/jarlib/hibernate-core-3.3.2.GA.jar deleted file mode 100644 index eda14b7..0000000 Binary files a/jarlib/hibernate-core-3.3.2.GA.jar and /dev/null differ diff --git a/jarlib/hibernate-entitymanager-3.4.0.GA.jar b/jarlib/hibernate-entitymanager-3.4.0.GA.jar deleted file mode 100644 index 662eab1..0000000 Binary files a/jarlib/hibernate-entitymanager-3.4.0.GA.jar and /dev/null differ diff --git a/jarlib/htmlcleaner-2.4.jar b/jarlib/htmlcleaner-2.4.jar deleted file mode 100644 index 081f62d..0000000 Binary files a/jarlib/htmlcleaner-2.4.jar and /dev/null differ diff --git a/jarlib/httpclient-4.3.5.jar b/jarlib/httpclient-4.3.5.jar deleted file mode 100644 index 1db1225..0000000 Binary files a/jarlib/httpclient-4.3.5.jar and /dev/null differ diff --git a/jarlib/httpcore-4.3.2.jar b/jarlib/httpcore-4.3.2.jar deleted file mode 100644 index 813ec23..0000000 Binary files a/jarlib/httpcore-4.3.2.jar and /dev/null differ diff --git a/jarlib/im4java-1.3.2.jar b/jarlib/im4java-1.3.2.jar deleted file mode 100644 index 6b4aa1c..0000000 Binary files a/jarlib/im4java-1.3.2.jar and /dev/null differ diff --git a/jarlib/jackson-all-1.6.4.jar b/jarlib/jackson-all-1.6.4.jar deleted file mode 100644 index 27e1601..0000000 Binary files a/jarlib/jackson-all-1.6.4.jar and /dev/null differ diff --git a/jarlib/jackson-annotations-2.0.0.jar b/jarlib/jackson-annotations-2.0.0.jar deleted file mode 100644 index 7e20bb2..0000000 Binary files a/jarlib/jackson-annotations-2.0.0.jar and /dev/null differ diff --git a/jarlib/jackson-core-2.0.0.jar b/jarlib/jackson-core-2.0.0.jar deleted file mode 100644 index 65e55a6..0000000 Binary files a/jarlib/jackson-core-2.0.0.jar and /dev/null differ diff --git a/jarlib/jackson-databind-2.0.0.jar b/jarlib/jackson-databind-2.0.0.jar deleted file mode 100644 index 30987ef..0000000 Binary files a/jarlib/jackson-databind-2.0.0.jar and /dev/null differ diff --git a/jarlib/javassist-3.4.GA.jar b/jarlib/javassist-3.4.GA.jar deleted file mode 100644 index a6bde77..0000000 Binary files a/jarlib/javassist-3.4.GA.jar and /dev/null differ diff --git a/jarlib/jedis-2.6.0.jar b/jarlib/jedis-2.6.0.jar deleted file mode 100644 index b1a5c65..0000000 Binary files a/jarlib/jedis-2.6.0.jar and /dev/null differ diff --git a/jarlib/jline-0.9.94.jar b/jarlib/jline-0.9.94.jar deleted file mode 100644 index dede372..0000000 Binary files a/jarlib/jline-0.9.94.jar and /dev/null differ diff --git a/jarlib/jodis-0.1.2.jar b/jarlib/jodis-0.1.2.jar deleted file mode 100644 index 2fe4e4b..0000000 Binary files a/jarlib/jodis-0.1.2.jar and /dev/null differ diff --git a/jarlib/json-jena-1.0.jar b/jarlib/json-jena-1.0.jar deleted file mode 100644 index 92b6be2..0000000 Binary files a/jarlib/json-jena-1.0.jar and /dev/null differ diff --git a/jarlib/jsoup-1.7.3.jar b/jarlib/jsoup-1.7.3.jar deleted file mode 100644 index aa5c798..0000000 Binary files a/jarlib/jsoup-1.7.3.jar and /dev/null differ diff --git a/jarlib/jta-1.1.jar b/jarlib/jta-1.1.jar deleted file mode 100644 index 7736ec9..0000000 Binary files a/jarlib/jta-1.1.jar and /dev/null differ diff --git a/jarlib/kafka-0.10.jar b/jarlib/kafka-0.10.jar deleted file mode 100644 index eba782e..0000000 Binary files a/jarlib/kafka-0.10.jar and /dev/null differ diff --git a/jarlib/kafka-clients.jar b/jarlib/kafka-clients.jar deleted file mode 100644 index e7cc420..0000000 Binary files a/jarlib/kafka-clients.jar and /dev/null differ diff --git a/jarlib/kafka8-1.0.0 - 副本.jar b/jarlib/kafka8-1.0.0 - 副本.jar deleted file mode 100644 index e801241..0000000 Binary files a/jarlib/kafka8-1.0.0 - 副本.jar and /dev/null differ diff --git a/jarlib/kafka8-1.0.0.jar b/jarlib/kafka8-1.0.0.jar deleted file mode 100644 index 951bf38..0000000 Binary files a/jarlib/kafka8-1.0.0.jar and /dev/null differ diff --git a/jarlib/kafka_2.10.jar b/jarlib/kafka_2.10.jar deleted file mode 100644 index 29d818b..0000000 Binary files a/jarlib/kafka_2.10.jar and /dev/null differ diff --git a/jarlib/log4j-1.2.15.jar b/jarlib/log4j-1.2.15.jar deleted file mode 100644 index c930a6a..0000000 Binary files a/jarlib/log4j-1.2.15.jar and /dev/null differ diff --git a/jarlib/metrics-annotation-2.2.0.jar b/jarlib/metrics-annotation-2.2.0.jar deleted file mode 100644 index 0acdfae..0000000 Binary files a/jarlib/metrics-annotation-2.2.0.jar and /dev/null differ diff --git a/jarlib/metrics-core-2.2.0.jar b/jarlib/metrics-core-2.2.0.jar deleted file mode 100644 index 0f6d1cb..0000000 Binary files a/jarlib/metrics-core-2.2.0.jar and /dev/null differ diff --git a/jarlib/mybatis-3.1.1.jar b/jarlib/mybatis-3.1.1.jar deleted file mode 100644 index 2801833..0000000 Binary files a/jarlib/mybatis-3.1.1.jar and /dev/null differ diff --git a/jarlib/mysql-connector-java-5.1.6-bin.jar b/jarlib/mysql-connector-java-5.1.6-bin.jar deleted file mode 100644 index 0539039..0000000 Binary files a/jarlib/mysql-connector-java-5.1.6-bin.jar and /dev/null differ diff --git a/jarlib/nekohtml-0.9.5.jar b/jarlib/nekohtml-0.9.5.jar deleted file mode 100644 index ebd5b4b..0000000 Binary files a/jarlib/nekohtml-0.9.5.jar and /dev/null differ diff --git a/jarlib/netty-3.7.0.Final.jar b/jarlib/netty-3.7.0.Final.jar deleted file mode 100644 index eef1aba..0000000 Binary files a/jarlib/netty-3.7.0.Final.jar and /dev/null differ diff --git a/jarlib/nlp_common_util-1.1.jar b/jarlib/nlp_common_util-1.1.jar deleted file mode 100644 index 1858c4a..0000000 Binary files a/jarlib/nlp_common_util-1.1.jar and /dev/null differ diff --git a/jarlib/org.apache.sling.commons.html-1.0.0.jar b/jarlib/org.apache.sling.commons.html-1.0.0.jar deleted file mode 100644 index 5fe71e7..0000000 Binary files a/jarlib/org.apache.sling.commons.html-1.0.0.jar and /dev/null differ diff --git a/jarlib/persistence-api-1.0.jar b/jarlib/persistence-api-1.0.jar deleted file mode 100644 index fe5dbcd..0000000 Binary files a/jarlib/persistence-api-1.0.jar and /dev/null differ diff --git a/jarlib/protobuf-java-2.4.1.jar b/jarlib/protobuf-java-2.4.1.jar deleted file mode 100644 index 80efbe8..0000000 Binary files a/jarlib/protobuf-java-2.4.1.jar and /dev/null differ diff --git a/jarlib/scala-library.jar b/jarlib/scala-library.jar deleted file mode 100644 index 278a51e..0000000 Binary files a/jarlib/scala-library.jar and /dev/null differ diff --git a/jarlib/serializer.jar b/jarlib/serializer.jar deleted file mode 100644 index 99f98db..0000000 Binary files a/jarlib/serializer.jar and /dev/null differ diff --git a/jarlib/slf4j-api-1.6.1.jar b/jarlib/slf4j-api-1.6.1.jar deleted file mode 100644 index f1f4fdd..0000000 Binary files a/jarlib/slf4j-api-1.6.1.jar and /dev/null differ diff --git a/jarlib/slf4j-api-1.7.2.jar b/jarlib/slf4j-api-1.7.2.jar deleted file mode 100644 index 1a88708..0000000 Binary files a/jarlib/slf4j-api-1.7.2.jar and /dev/null differ diff --git a/jarlib/slf4j-log4j12-1.6.1.jar b/jarlib/slf4j-log4j12-1.6.1.jar deleted file mode 100644 index 6411599..0000000 Binary files a/jarlib/slf4j-log4j12-1.6.1.jar and /dev/null differ diff --git a/jarlib/snappy-java-1.0.4.1.jar b/jarlib/snappy-java-1.0.4.1.jar deleted file mode 100644 index 8198919..0000000 Binary files a/jarlib/snappy-java-1.0.4.1.jar and /dev/null differ diff --git a/jarlib/taskManager-0.0.1-SNAPSHOT.jar b/jarlib/taskManager-0.0.1-SNAPSHOT.jar deleted file mode 100644 index 4dd75bb..0000000 Binary files a/jarlib/taskManager-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/jarlib/tika-core-0.9.jar b/jarlib/tika-core-0.9.jar deleted file mode 100644 index 740e6e0..0000000 Binary files a/jarlib/tika-core-0.9.jar and /dev/null differ diff --git a/jarlib/utils-0.0.1-SNAPSHOT.jar b/jarlib/utils-0.0.1-SNAPSHOT.jar deleted file mode 100644 index d319fc8..0000000 Binary files a/jarlib/utils-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/jarlib/utils-0.0.1-crawlhuafen.jar b/jarlib/utils-0.0.1-crawlhuafen.jar deleted file mode 100644 index 1ef5f48..0000000 Binary files a/jarlib/utils-0.0.1-crawlhuafen.jar and /dev/null differ diff --git a/jarlib/utils-3.0.0.jar b/jarlib/utils-3.0.0.jar deleted file mode 100644 index 0953c15..0000000 Binary files a/jarlib/utils-3.0.0.jar and /dev/null differ diff --git a/jarlib/xalan.jar b/jarlib/xalan.jar deleted file mode 100644 index 458fa73..0000000 Binary files a/jarlib/xalan.jar and /dev/null differ diff --git a/jarlib/xercesImpl-2.9.1.jar b/jarlib/xercesImpl-2.9.1.jar deleted file mode 100644 index 547f563..0000000 Binary files a/jarlib/xercesImpl-2.9.1.jar and /dev/null differ diff --git a/jarlib/xercesImpl.jar b/jarlib/xercesImpl.jar deleted file mode 100644 index e0a4c2e..0000000 Binary files a/jarlib/xercesImpl.jar and /dev/null differ diff --git a/jarlib/xml-apis-1.0.b2.jar b/jarlib/xml-apis-1.0.b2.jar deleted file mode 100644 index ad33a5a..0000000 Binary files a/jarlib/xml-apis-1.0.b2.jar and /dev/null differ diff --git a/jarlib/xml-apis-1.3.04.jar b/jarlib/xml-apis-1.3.04.jar deleted file mode 100644 index d42c0ea..0000000 Binary files a/jarlib/xml-apis-1.3.04.jar and /dev/null differ diff --git a/jarlib/xmlParserAPIs-2.6.2.jar b/jarlib/xmlParserAPIs-2.6.2.jar deleted file mode 100644 index 2dd8377..0000000 Binary files a/jarlib/xmlParserAPIs-2.6.2.jar and /dev/null differ diff --git a/jarlib/xmlenc-0.52.jar b/jarlib/xmlenc-0.52.jar deleted file mode 100644 index ec568b4..0000000 Binary files a/jarlib/xmlenc-0.52.jar and /dev/null differ diff --git a/jarlib/zkclient-0.3.jar b/jarlib/zkclient-0.3.jar deleted file mode 100644 index 6dbd23c..0000000 Binary files a/jarlib/zkclient-0.3.jar and /dev/null differ diff --git a/jarlib/zookeeper-3.4.6.jar b/jarlib/zookeeper-3.4.6.jar deleted file mode 100644 index 7c340be..0000000 Binary files a/jarlib/zookeeper-3.4.6.jar and /dev/null differ diff --git a/log/kafka.log b/log/kafka.log deleted file mode 100644 index a4e1a6f..0000000 --- a/log/kafka.log +++ /dev/null @@ -1,9 +0,0 @@ -[ERROR] 2023-05-19 23:13:06,353 - RedisUtil:186 : RedisUtilTwo:getProperties(String filePath):Error details:error in read file -java.io.FileNotFoundException: ../etc/145redis.properties (No such file or directory) - at java.io.FileInputStream.open0(Native Method) - at java.io.FileInputStream.open(FileInputStream.java:195) - at java.io.FileInputStream.(FileInputStream.java:138) - at crawler.open.util.RedisUtil.getProperties(RedisUtil.java:181) - at crawler.open.util.RedisUtil.init(RedisUtil.java:84) - at com.bfd.mf.runstart.RunStartDataSave.(RunStartDataSave.java:27) -[ERROR] 2023-05-19 23:13:06,359 - RedisUtil:86 : RedisUtilTwo:init(String configFilePath):Error details:error in reading file from configFilePath diff --git a/log/kafka.log.2020-09-22 b/log/kafka.log.2020-09-22 deleted file mode 100644 index e69de29..0000000 diff --git a/log/kafka.log.2020-09-23 b/log/kafka.log.2020-09-23 deleted file mode 100644 index 765dc8b..0000000 --- a/log/kafka.log.2020-09-23 +++ /dev/null @@ -1,9 +0,0 @@ -[ERROR] 2020-09-23 09:35:06,940 - RedisUtil:182 : Error details:error in read file -java.io.FileNotFoundException: ..\etc\redis.properties (系统找不到指定的路径。) - at java.io.FileInputStream.open0(Native Method) - at java.io.FileInputStream.open(FileInputStream.java:195) - at java.io.FileInputStream.(FileInputStream.java:138) - at crawler.open.util.RedisUtil.getProperties(RedisUtil.java:178) - at crawler.open.util.RedisUtil.init(RedisUtil.java:89) - at com.bfd.mf.runstart.RunStartService.(RunStartService.java:31) -[ERROR] 2020-09-23 09:35:06,949 - RedisUtil:91 : Error details:error in reading file from configFilePath diff --git a/log/kafka.log.2020-11-25 b/log/kafka.log.2020-11-25 deleted file mode 100644 index bf8de1c..0000000 --- a/log/kafka.log.2020-11-25 +++ /dev/null @@ -1,2 +0,0 @@ -[WARN ] 2020-11-25 16:29:31,554 - RestClient:65 : request [POST http://172.26.11.111:9201/_bulk?timeout=1m] returned 1 warnings: [299 Elasticsearch-6.0.0-8f0685b "[_all] is deprecated in 6.0+ and will be removed in 7.0. As a replacement, you can use [copy_to] on mapping fields to create your own catch all field." "Wed, 25 Nov 2020 08:29:28 GMT"] -[WARN ] 2020-11-25 16:35:14,206 - RestClient:65 : request [POST http://172.26.11.109:9201/_bulk?timeout=1m] returned 1 warnings: [299 Elasticsearch-6.0.0-8f0685b "[_all] is deprecated in 6.0+ and will be removed in 7.0. As a replacement, you can use [copy_to] on mapping fields to create your own catch all field." "Wed, 25 Nov 2020 08:35:03 GMT"] diff --git a/log/kafka.log.2022-10-28 b/log/kafka.log.2022-10-28 deleted file mode 100644 index d17ae63..0000000 --- a/log/kafka.log.2022-10-28 +++ /dev/null @@ -1,9 +0,0 @@ -[ERROR] 2022-10-28 13:22:32,751 - RedisUtil:186 : RedisUtilTwo:getProperties(String filePath):Error details:error in read file -java.io.FileNotFoundException: ..\etc\145redis.properties (系统找不到指定的路径。) - at java.io.FileInputStream.open0(Native Method) - at java.io.FileInputStream.open(FileInputStream.java:195) - at java.io.FileInputStream.(FileInputStream.java:138) - at crawler.open.util.RedisUtil.getProperties(RedisUtil.java:181) - at crawler.open.util.RedisUtil.init(RedisUtil.java:84) - at com.bfd.mf.runstart.RunStartDataSave.(RunStartDataSave.java:30) -[ERROR] 2022-10-28 13:22:32,767 - RedisUtil:86 : RedisUtilTwo:init(String configFilePath):Error details:error in reading file from configFilePath diff --git a/out/artifacts/cl_stream_datasave_jar/BfdRedisTools-2.0-1.0.0.jar b/out/artifacts/cl_stream_datasave_jar/BfdRedisTools-2.0-1.0.0.jar deleted file mode 100644 index 4920d62..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/BfdRedisTools-2.0-1.0.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/HdrHistogram-2.1.9.jar b/out/artifacts/cl_stream_datasave_jar/HdrHistogram-2.1.9.jar deleted file mode 100644 index efa2637..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/HdrHistogram-2.1.9.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/aggs-matrix-stats-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/aggs-matrix-stats-client-6.2.3.jar deleted file mode 100644 index 9dbdc72..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/aggs-matrix-stats-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/cl_stream_datasave.jar b/out/artifacts/cl_stream_datasave_jar/cl_stream_datasave.jar deleted file mode 100644 index 096fc59..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/cl_stream_datasave.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/commons-codec-1.10.jar b/out/artifacts/cl_stream_datasave_jar/commons-codec-1.10.jar deleted file mode 100644 index 1d7417c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/commons-codec-1.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/commons-lang-2.4.jar b/out/artifacts/cl_stream_datasave_jar/commons-lang-2.4.jar deleted file mode 100644 index 532939e..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/commons-lang-2.4.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/commons-lang3-3.1.jar b/out/artifacts/cl_stream_datasave_jar/commons-lang3-3.1.jar deleted file mode 100644 index a85e539..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/commons-lang3-3.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/commons-logging-1.1.3.jar b/out/artifacts/cl_stream_datasave_jar/commons-logging-1.1.3.jar deleted file mode 100644 index ab51254..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/commons-logging-1.1.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/commons-pool2-2.0.jar b/out/artifacts/cl_stream_datasave_jar/commons-pool2-2.0.jar deleted file mode 100644 index be6d84f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/commons-pool2-2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/compiler-0.9.3.jar b/out/artifacts/cl_stream_datasave_jar/compiler-0.9.3.jar deleted file mode 100644 index 60cae63..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/compiler-0.9.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/curator-client-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar/curator-client-2.7.0.jar deleted file mode 100644 index 9e59fe7..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/curator-client-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/curator-framework-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar/curator-framework-2.7.0.jar deleted file mode 100644 index 660a2c8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/curator-framework-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/curator-recipes-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar/curator-recipes-2.7.0.jar deleted file mode 100644 index aca3870..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/curator-recipes-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elastiUtils-0.0.1-SNAPSHOT.jar b/out/artifacts/cl_stream_datasave_jar/elastiUtils-0.0.1-SNAPSHOT.jar deleted file mode 100644 index d14c243..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elastiUtils-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elasticsearch-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/elasticsearch-6.2.3.jar deleted file mode 100644 index 3025e97..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elasticsearch-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elasticsearch-cli-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/elasticsearch-cli-6.2.3.jar deleted file mode 100644 index 22ce426..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elasticsearch-cli-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elasticsearch-core-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/elasticsearch-core-6.2.3.jar deleted file mode 100644 index 798fda0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elasticsearch-core-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-client-6.2.3.jar deleted file mode 100644 index a617c2b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-high-level-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-high-level-client-6.2.3.jar deleted file mode 100644 index dd30748..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/elasticsearch-rest-high-level-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/fastjson-1.1.22.jar b/out/artifacts/cl_stream_datasave_jar/fastjson-1.1.22.jar deleted file mode 100644 index d69ed23..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/fastjson-1.1.22.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/guava-14.0.1.jar b/out/artifacts/cl_stream_datasave_jar/guava-14.0.1.jar deleted file mode 100644 index 3a3d925..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/guava-14.0.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/hamcrest-core-1.3.jar b/out/artifacts/cl_stream_datasave_jar/hamcrest-core-1.3.jar deleted file mode 100644 index 9d5fe16..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/hamcrest-core-1.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/hppc-0.7.1.jar b/out/artifacts/cl_stream_datasave_jar/hppc-0.7.1.jar deleted file mode 100644 index ed318de..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/hppc-0.7.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/httpasyncclient-4.1.2.jar b/out/artifacts/cl_stream_datasave_jar/httpasyncclient-4.1.2.jar deleted file mode 100644 index 20a8a5a..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/httpasyncclient-4.1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/httpclient-4.5.2.jar b/out/artifacts/cl_stream_datasave_jar/httpclient-4.5.2.jar deleted file mode 100644 index 701609f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/httpclient-4.5.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/httpcore-4.4.5.jar b/out/artifacts/cl_stream_datasave_jar/httpcore-4.4.5.jar deleted file mode 100644 index 6bbf0ac..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/httpcore-4.4.5.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/httpcore-nio-4.4.5.jar b/out/artifacts/cl_stream_datasave_jar/httpcore-nio-4.4.5.jar deleted file mode 100644 index 1845286..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/httpcore-nio-4.4.5.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-annotations-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar/jackson-annotations-2.8.1.jar deleted file mode 100644 index 5715db7..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-annotations-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-core-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar/jackson-core-2.8.1.jar deleted file mode 100644 index 29230d4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-core-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-databind-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar/jackson-databind-2.8.1.jar deleted file mode 100644 index c4c4801..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-databind-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-cbor-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-cbor-2.8.10.jar deleted file mode 100644 index 3b8b79c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-cbor-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-smile-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-smile-2.8.10.jar deleted file mode 100644 index cb2782c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-smile-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-yaml-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-yaml-2.8.10.jar deleted file mode 100644 index b100508..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jackson-dataformat-yaml-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jedis-2.6.0.jar b/out/artifacts/cl_stream_datasave_jar/jedis-2.6.0.jar deleted file mode 100644 index b1a5c65..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jedis-2.6.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jline-0.9.94.jar b/out/artifacts/cl_stream_datasave_jar/jline-0.9.94.jar deleted file mode 100644 index dede372..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jline-0.9.94.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jna-4.5.1.jar b/out/artifacts/cl_stream_datasave_jar/jna-4.5.1.jar deleted file mode 100644 index e220187..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jna-4.5.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/joda-time-2.9.9.jar b/out/artifacts/cl_stream_datasave_jar/joda-time-2.9.9.jar deleted file mode 100644 index b3080c4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/joda-time-2.9.9.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jodis-0.1.2.jar b/out/artifacts/cl_stream_datasave_jar/jodis-0.1.2.jar deleted file mode 100644 index 2fe4e4b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jodis-0.1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jopt-simple-5.0.3.jar b/out/artifacts/cl_stream_datasave_jar/jopt-simple-5.0.3.jar deleted file mode 100644 index 39a78d0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jopt-simple-5.0.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/jts-1.13.jar b/out/artifacts/cl_stream_datasave_jar/jts-1.13.jar deleted file mode 100644 index bbaa20b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/jts-1.13.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/junit-4.13-beta-1.jar b/out/artifacts/cl_stream_datasave_jar/junit-4.13-beta-1.jar deleted file mode 100644 index 2b3a09f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/junit-4.13-beta-1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/kafka-0.10.jar b/out/artifacts/cl_stream_datasave_jar/kafka-0.10.jar deleted file mode 100644 index eba782e..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/kafka-0.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/kafka-clients-0.10.2.0.jar b/out/artifacts/cl_stream_datasave_jar/kafka-clients-0.10.2.0.jar deleted file mode 100644 index bd92e27..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/kafka-clients-0.10.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/kafka_2.10-0.10.2.0.jar b/out/artifacts/cl_stream_datasave_jar/kafka_2.10-0.10.2.0.jar deleted file mode 100644 index 1296fa1..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/kafka_2.10-0.10.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lang-mustache-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/lang-mustache-client-6.2.3.jar deleted file mode 100644 index bb7fbaf..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lang-mustache-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/log4j-1.2.17.jar b/out/artifacts/cl_stream_datasave_jar/log4j-1.2.17.jar deleted file mode 100644 index 1d425cf..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/log4j-1.2.17.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/log4j-api-2.9.1.jar b/out/artifacts/cl_stream_datasave_jar/log4j-api-2.9.1.jar deleted file mode 100644 index 04cabc8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/log4j-api-2.9.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/log4j-core-2.9.1.jar b/out/artifacts/cl_stream_datasave_jar/log4j-core-2.9.1.jar deleted file mode 100644 index c4dcdb5..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/log4j-core-2.9.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-analyzers-common-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-analyzers-common-7.2.1.jar deleted file mode 100644 index a676141..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-analyzers-common-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-backward-codecs-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-backward-codecs-7.2.1.jar deleted file mode 100644 index cfa2710..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-backward-codecs-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-core-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-core-7.2.1.jar deleted file mode 100644 index 698f85f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-core-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-grouping-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-grouping-7.2.1.jar deleted file mode 100644 index 4cdf0a8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-grouping-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-highlighter-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-highlighter-7.2.1.jar deleted file mode 100644 index d373625..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-highlighter-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-join-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-join-7.2.1.jar deleted file mode 100644 index b0a53f2..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-join-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-memory-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-memory-7.2.1.jar deleted file mode 100644 index 88d2802..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-memory-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-misc-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-misc-7.2.1.jar deleted file mode 100644 index 991be21..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-misc-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-queries-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-queries-7.2.1.jar deleted file mode 100644 index fddf08b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-queries-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-queryparser-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-queryparser-7.2.1.jar deleted file mode 100644 index 08ea469..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-queryparser-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-sandbox-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-sandbox-7.2.1.jar deleted file mode 100644 index 4c273c9..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-sandbox-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-spatial-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-spatial-7.2.1.jar deleted file mode 100644 index e24c499..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-spatial-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-spatial-extras-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-spatial-extras-7.2.1.jar deleted file mode 100644 index 1b1d791..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-spatial-extras-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-spatial3d-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-spatial3d-7.2.1.jar deleted file mode 100644 index 9e53492..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-spatial3d-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lucene-suggest-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar/lucene-suggest-7.2.1.jar deleted file mode 100644 index 180e615..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lucene-suggest-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/lz4-1.3.0.jar b/out/artifacts/cl_stream_datasave_jar/lz4-1.3.0.jar deleted file mode 100644 index aaf641c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/lz4-1.3.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/metrics-core-2.2.0.jar b/out/artifacts/cl_stream_datasave_jar/metrics-core-2.2.0.jar deleted file mode 100644 index 0f6d1cb..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/metrics-core-2.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/mysql-connector-java-8.0.29.jar b/out/artifacts/cl_stream_datasave_jar/mysql-connector-java-8.0.29.jar deleted file mode 100644 index 5f9f134..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/mysql-connector-java-8.0.29.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-3.7.0.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-3.7.0.Final.jar deleted file mode 100644 index eef1aba..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-3.7.0.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-buffer-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-buffer-4.1.16.Final.jar deleted file mode 100644 index fc1ef26..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-buffer-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-codec-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-codec-4.1.16.Final.jar deleted file mode 100644 index 6b3545c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-codec-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-codec-http-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-codec-http-4.1.16.Final.jar deleted file mode 100644 index e52fcb3..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-codec-http-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-common-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-common-4.1.16.Final.jar deleted file mode 100644 index 181c1e8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-common-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-handler-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-handler-4.1.16.Final.jar deleted file mode 100644 index e2c0cb9..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-handler-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-resolver-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-resolver-4.1.16.Final.jar deleted file mode 100644 index 12dfb8a..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-resolver-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/netty-transport-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar/netty-transport-4.1.16.Final.jar deleted file mode 100644 index 2c2feed..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/netty-transport-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/okhttp-3.6.0.jar b/out/artifacts/cl_stream_datasave_jar/okhttp-3.6.0.jar deleted file mode 100644 index e6e4518..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/okhttp-3.6.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/okio-1.11.0.jar b/out/artifacts/cl_stream_datasave_jar/okio-1.11.0.jar deleted file mode 100644 index d6563e2..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/okio-1.11.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/parent-join-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/parent-join-client-6.2.3.jar deleted file mode 100644 index 2361e88..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/parent-join-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/percolator-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/percolator-client-6.2.3.jar deleted file mode 100644 index 6186465..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/percolator-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/protobuf-java-3.19.4.jar b/out/artifacts/cl_stream_datasave_jar/protobuf-java-3.19.4.jar deleted file mode 100644 index a545ea0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/protobuf-java-3.19.4.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/rank-eval-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/rank-eval-client-6.2.3.jar deleted file mode 100644 index 5b15b04..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/rank-eval-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/reindex-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/reindex-client-6.2.3.jar deleted file mode 100644 index e2ee509..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/reindex-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/scala-library-2.10.6.jar b/out/artifacts/cl_stream_datasave_jar/scala-library-2.10.6.jar deleted file mode 100644 index 6386ba4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/scala-library-2.10.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/securesm-1.2.jar b/out/artifacts/cl_stream_datasave_jar/securesm-1.2.jar deleted file mode 100644 index 15c06ba..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/securesm-1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/slf4j-api-1.7.22.jar b/out/artifacts/cl_stream_datasave_jar/slf4j-api-1.7.22.jar deleted file mode 100644 index 3c3d953..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/slf4j-api-1.7.22.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/slf4j-log4j12-1.7.21.jar b/out/artifacts/cl_stream_datasave_jar/slf4j-log4j12-1.7.21.jar deleted file mode 100644 index ff4fddd..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/slf4j-log4j12-1.7.21.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/snakeyaml-1.17.jar b/out/artifacts/cl_stream_datasave_jar/snakeyaml-1.17.jar deleted file mode 100644 index b0372a3..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/snakeyaml-1.17.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/snappy-java-1.1.2.6.jar b/out/artifacts/cl_stream_datasave_jar/snappy-java-1.1.2.6.jar deleted file mode 100644 index 5c354d1..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/snappy-java-1.1.2.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/spatial4j-0.6.jar b/out/artifacts/cl_stream_datasave_jar/spatial4j-0.6.jar deleted file mode 100644 index 1afa507..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/spatial4j-0.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/t-digest-3.0.jar b/out/artifacts/cl_stream_datasave_jar/t-digest-3.0.jar deleted file mode 100644 index cfb29bc..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/t-digest-3.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/transport-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/transport-6.2.3.jar deleted file mode 100644 index e0a13d0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/transport-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/transport-netty4-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar/transport-netty4-client-6.2.3.jar deleted file mode 100644 index a612743..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/transport-netty4-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/utils-3.0.0.jar b/out/artifacts/cl_stream_datasave_jar/utils-3.0.0.jar deleted file mode 100644 index 0953c15..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/utils-3.0.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/zkclient-0.10.jar b/out/artifacts/cl_stream_datasave_jar/zkclient-0.10.jar deleted file mode 100644 index b97c439..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/zkclient-0.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar/zookeeper-3.4.6.jar b/out/artifacts/cl_stream_datasave_jar/zookeeper-3.4.6.jar deleted file mode 100644 index 7c340be..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar/zookeeper-3.4.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/BfdRedisTools-2.0-1.0.0.jar b/out/artifacts/cl_stream_datasave_jar2/BfdRedisTools-2.0-1.0.0.jar deleted file mode 100644 index 4920d62..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/BfdRedisTools-2.0-1.0.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/HdrHistogram-2.1.9.jar b/out/artifacts/cl_stream_datasave_jar2/HdrHistogram-2.1.9.jar deleted file mode 100644 index efa2637..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/HdrHistogram-2.1.9.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/aggs-matrix-stats-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/aggs-matrix-stats-client-6.2.3.jar deleted file mode 100644 index 9dbdc72..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/aggs-matrix-stats-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/cl_stream_datasave.jar b/out/artifacts/cl_stream_datasave_jar2/cl_stream_datasave.jar deleted file mode 100644 index e0debe8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/cl_stream_datasave.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/commons-codec-1.10.jar b/out/artifacts/cl_stream_datasave_jar2/commons-codec-1.10.jar deleted file mode 100644 index 1d7417c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/commons-codec-1.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/commons-lang-2.4.jar b/out/artifacts/cl_stream_datasave_jar2/commons-lang-2.4.jar deleted file mode 100644 index 532939e..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/commons-lang-2.4.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/commons-lang3-3.1.jar b/out/artifacts/cl_stream_datasave_jar2/commons-lang3-3.1.jar deleted file mode 100644 index a85e539..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/commons-lang3-3.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/commons-logging-1.1.3.jar b/out/artifacts/cl_stream_datasave_jar2/commons-logging-1.1.3.jar deleted file mode 100644 index ab51254..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/commons-logging-1.1.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/commons-pool2-2.0.jar b/out/artifacts/cl_stream_datasave_jar2/commons-pool2-2.0.jar deleted file mode 100644 index be6d84f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/commons-pool2-2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/compiler-0.9.3.jar b/out/artifacts/cl_stream_datasave_jar2/compiler-0.9.3.jar deleted file mode 100644 index 60cae63..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/compiler-0.9.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/curator-client-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar2/curator-client-2.7.0.jar deleted file mode 100644 index 9e59fe7..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/curator-client-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/curator-framework-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar2/curator-framework-2.7.0.jar deleted file mode 100644 index 660a2c8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/curator-framework-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/curator-recipes-2.7.0.jar b/out/artifacts/cl_stream_datasave_jar2/curator-recipes-2.7.0.jar deleted file mode 100644 index aca3870..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/curator-recipes-2.7.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elastiUtils-0.0.1-SNAPSHOT.jar b/out/artifacts/cl_stream_datasave_jar2/elastiUtils-0.0.1-SNAPSHOT.jar deleted file mode 100644 index d14c243..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elastiUtils-0.0.1-SNAPSHOT.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/elasticsearch-6.2.3.jar deleted file mode 100644 index 3025e97..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-cli-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/elasticsearch-cli-6.2.3.jar deleted file mode 100644 index 22ce426..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-cli-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-core-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/elasticsearch-core-6.2.3.jar deleted file mode 100644 index 798fda0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-core-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-client-6.2.3.jar deleted file mode 100644 index a617c2b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-high-level-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-high-level-client-6.2.3.jar deleted file mode 100644 index dd30748..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/elasticsearch-rest-high-level-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/fastjson-1.1.22.jar b/out/artifacts/cl_stream_datasave_jar2/fastjson-1.1.22.jar deleted file mode 100644 index d69ed23..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/fastjson-1.1.22.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/guava-14.0.1.jar b/out/artifacts/cl_stream_datasave_jar2/guava-14.0.1.jar deleted file mode 100644 index 3a3d925..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/guava-14.0.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/hamcrest-core-1.3.jar b/out/artifacts/cl_stream_datasave_jar2/hamcrest-core-1.3.jar deleted file mode 100644 index 9d5fe16..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/hamcrest-core-1.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/hppc-0.7.1.jar b/out/artifacts/cl_stream_datasave_jar2/hppc-0.7.1.jar deleted file mode 100644 index ed318de..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/hppc-0.7.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/httpasyncclient-4.1.2.jar b/out/artifacts/cl_stream_datasave_jar2/httpasyncclient-4.1.2.jar deleted file mode 100644 index 20a8a5a..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/httpasyncclient-4.1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/httpclient-4.5.2.jar b/out/artifacts/cl_stream_datasave_jar2/httpclient-4.5.2.jar deleted file mode 100644 index 701609f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/httpclient-4.5.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/httpcore-4.4.5.jar b/out/artifacts/cl_stream_datasave_jar2/httpcore-4.4.5.jar deleted file mode 100644 index 6bbf0ac..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/httpcore-4.4.5.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/httpcore-nio-4.4.5.jar b/out/artifacts/cl_stream_datasave_jar2/httpcore-nio-4.4.5.jar deleted file mode 100644 index 1845286..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/httpcore-nio-4.4.5.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-annotations-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-annotations-2.8.1.jar deleted file mode 100644 index 5715db7..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-annotations-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-core-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-core-2.8.1.jar deleted file mode 100644 index 29230d4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-core-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-databind-2.8.1.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-databind-2.8.1.jar deleted file mode 100644 index c4c4801..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-databind-2.8.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-cbor-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-cbor-2.8.10.jar deleted file mode 100644 index 3b8b79c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-cbor-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-smile-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-smile-2.8.10.jar deleted file mode 100644 index cb2782c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-smile-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-yaml-2.8.10.jar b/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-yaml-2.8.10.jar deleted file mode 100644 index b100508..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jackson-dataformat-yaml-2.8.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jedis-2.6.0.jar b/out/artifacts/cl_stream_datasave_jar2/jedis-2.6.0.jar deleted file mode 100644 index b1a5c65..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jedis-2.6.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jline-0.9.94.jar b/out/artifacts/cl_stream_datasave_jar2/jline-0.9.94.jar deleted file mode 100644 index dede372..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jline-0.9.94.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jna-4.5.1.jar b/out/artifacts/cl_stream_datasave_jar2/jna-4.5.1.jar deleted file mode 100644 index e220187..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jna-4.5.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/joda-time-2.9.9.jar b/out/artifacts/cl_stream_datasave_jar2/joda-time-2.9.9.jar deleted file mode 100644 index b3080c4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/joda-time-2.9.9.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jodis-0.1.2.jar b/out/artifacts/cl_stream_datasave_jar2/jodis-0.1.2.jar deleted file mode 100644 index 2fe4e4b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jodis-0.1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jopt-simple-5.0.3.jar b/out/artifacts/cl_stream_datasave_jar2/jopt-simple-5.0.3.jar deleted file mode 100644 index 39a78d0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jopt-simple-5.0.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/jts-1.13.jar b/out/artifacts/cl_stream_datasave_jar2/jts-1.13.jar deleted file mode 100644 index bbaa20b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/jts-1.13.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/junit-4.13-beta-1.jar b/out/artifacts/cl_stream_datasave_jar2/junit-4.13-beta-1.jar deleted file mode 100644 index 2b3a09f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/junit-4.13-beta-1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/kafka-0.10.jar b/out/artifacts/cl_stream_datasave_jar2/kafka-0.10.jar deleted file mode 100644 index eba782e..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/kafka-0.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/kafka-clients-0.10.2.0.jar b/out/artifacts/cl_stream_datasave_jar2/kafka-clients-0.10.2.0.jar deleted file mode 100644 index bd92e27..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/kafka-clients-0.10.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/kafka_2.10-0.10.2.0.jar b/out/artifacts/cl_stream_datasave_jar2/kafka_2.10-0.10.2.0.jar deleted file mode 100644 index 1296fa1..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/kafka_2.10-0.10.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lang-mustache-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/lang-mustache-client-6.2.3.jar deleted file mode 100644 index bb7fbaf..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lang-mustache-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/log4j-1.2.17.jar b/out/artifacts/cl_stream_datasave_jar2/log4j-1.2.17.jar deleted file mode 100644 index 1d425cf..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/log4j-1.2.17.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/log4j-api-2.9.1.jar b/out/artifacts/cl_stream_datasave_jar2/log4j-api-2.9.1.jar deleted file mode 100644 index 04cabc8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/log4j-api-2.9.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/log4j-core-2.9.1.jar b/out/artifacts/cl_stream_datasave_jar2/log4j-core-2.9.1.jar deleted file mode 100644 index c4dcdb5..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/log4j-core-2.9.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-analyzers-common-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-analyzers-common-7.2.1.jar deleted file mode 100644 index a676141..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-analyzers-common-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-backward-codecs-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-backward-codecs-7.2.1.jar deleted file mode 100644 index cfa2710..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-backward-codecs-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-core-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-core-7.2.1.jar deleted file mode 100644 index 698f85f..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-core-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-grouping-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-grouping-7.2.1.jar deleted file mode 100644 index 4cdf0a8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-grouping-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-highlighter-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-highlighter-7.2.1.jar deleted file mode 100644 index d373625..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-highlighter-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-join-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-join-7.2.1.jar deleted file mode 100644 index b0a53f2..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-join-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-memory-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-memory-7.2.1.jar deleted file mode 100644 index 88d2802..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-memory-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-misc-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-misc-7.2.1.jar deleted file mode 100644 index 991be21..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-misc-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-queries-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-queries-7.2.1.jar deleted file mode 100644 index fddf08b..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-queries-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-queryparser-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-queryparser-7.2.1.jar deleted file mode 100644 index 08ea469..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-queryparser-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-sandbox-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-sandbox-7.2.1.jar deleted file mode 100644 index 4c273c9..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-sandbox-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-7.2.1.jar deleted file mode 100644 index e24c499..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-extras-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-extras-7.2.1.jar deleted file mode 100644 index 1b1d791..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial-extras-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial3d-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-spatial3d-7.2.1.jar deleted file mode 100644 index 9e53492..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-spatial3d-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lucene-suggest-7.2.1.jar b/out/artifacts/cl_stream_datasave_jar2/lucene-suggest-7.2.1.jar deleted file mode 100644 index 180e615..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lucene-suggest-7.2.1.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/lz4-1.3.0.jar b/out/artifacts/cl_stream_datasave_jar2/lz4-1.3.0.jar deleted file mode 100644 index aaf641c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/lz4-1.3.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/metrics-core-2.2.0.jar b/out/artifacts/cl_stream_datasave_jar2/metrics-core-2.2.0.jar deleted file mode 100644 index 0f6d1cb..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/metrics-core-2.2.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/mysql-connector-java-8.0.29.jar b/out/artifacts/cl_stream_datasave_jar2/mysql-connector-java-8.0.29.jar deleted file mode 100644 index 5f9f134..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/mysql-connector-java-8.0.29.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-3.7.0.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-3.7.0.Final.jar deleted file mode 100644 index eef1aba..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-3.7.0.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-buffer-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-buffer-4.1.16.Final.jar deleted file mode 100644 index fc1ef26..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-buffer-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-codec-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-codec-4.1.16.Final.jar deleted file mode 100644 index 6b3545c..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-codec-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-codec-http-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-codec-http-4.1.16.Final.jar deleted file mode 100644 index e52fcb3..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-codec-http-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-common-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-common-4.1.16.Final.jar deleted file mode 100644 index 181c1e8..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-common-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-handler-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-handler-4.1.16.Final.jar deleted file mode 100644 index e2c0cb9..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-handler-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-resolver-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-resolver-4.1.16.Final.jar deleted file mode 100644 index 12dfb8a..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-resolver-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/netty-transport-4.1.16.Final.jar b/out/artifacts/cl_stream_datasave_jar2/netty-transport-4.1.16.Final.jar deleted file mode 100644 index 2c2feed..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/netty-transport-4.1.16.Final.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/okhttp-3.6.0.jar b/out/artifacts/cl_stream_datasave_jar2/okhttp-3.6.0.jar deleted file mode 100644 index e6e4518..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/okhttp-3.6.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/okio-1.11.0.jar b/out/artifacts/cl_stream_datasave_jar2/okio-1.11.0.jar deleted file mode 100644 index d6563e2..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/okio-1.11.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/parent-join-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/parent-join-client-6.2.3.jar deleted file mode 100644 index 2361e88..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/parent-join-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/percolator-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/percolator-client-6.2.3.jar deleted file mode 100644 index 6186465..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/percolator-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/protobuf-java-3.19.4.jar b/out/artifacts/cl_stream_datasave_jar2/protobuf-java-3.19.4.jar deleted file mode 100644 index a545ea0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/protobuf-java-3.19.4.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/rank-eval-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/rank-eval-client-6.2.3.jar deleted file mode 100644 index 5b15b04..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/rank-eval-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/reindex-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/reindex-client-6.2.3.jar deleted file mode 100644 index e2ee509..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/reindex-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/scala-library-2.10.6.jar b/out/artifacts/cl_stream_datasave_jar2/scala-library-2.10.6.jar deleted file mode 100644 index 6386ba4..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/scala-library-2.10.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/securesm-1.2.jar b/out/artifacts/cl_stream_datasave_jar2/securesm-1.2.jar deleted file mode 100644 index 15c06ba..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/securesm-1.2.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/slf4j-api-1.7.22.jar b/out/artifacts/cl_stream_datasave_jar2/slf4j-api-1.7.22.jar deleted file mode 100644 index 3c3d953..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/slf4j-api-1.7.22.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/slf4j-log4j12-1.7.21.jar b/out/artifacts/cl_stream_datasave_jar2/slf4j-log4j12-1.7.21.jar deleted file mode 100644 index ff4fddd..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/slf4j-log4j12-1.7.21.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/snakeyaml-1.17.jar b/out/artifacts/cl_stream_datasave_jar2/snakeyaml-1.17.jar deleted file mode 100644 index b0372a3..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/snakeyaml-1.17.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/snappy-java-1.1.2.6.jar b/out/artifacts/cl_stream_datasave_jar2/snappy-java-1.1.2.6.jar deleted file mode 100644 index 5c354d1..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/snappy-java-1.1.2.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/spatial4j-0.6.jar b/out/artifacts/cl_stream_datasave_jar2/spatial4j-0.6.jar deleted file mode 100644 index 1afa507..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/spatial4j-0.6.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/t-digest-3.0.jar b/out/artifacts/cl_stream_datasave_jar2/t-digest-3.0.jar deleted file mode 100644 index cfb29bc..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/t-digest-3.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/transport-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/transport-6.2.3.jar deleted file mode 100644 index e0a13d0..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/transport-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/transport-netty4-client-6.2.3.jar b/out/artifacts/cl_stream_datasave_jar2/transport-netty4-client-6.2.3.jar deleted file mode 100644 index a612743..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/transport-netty4-client-6.2.3.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/utils-3.0.0.jar b/out/artifacts/cl_stream_datasave_jar2/utils-3.0.0.jar deleted file mode 100644 index 0953c15..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/utils-3.0.0.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/zkclient-0.10.jar b/out/artifacts/cl_stream_datasave_jar2/zkclient-0.10.jar deleted file mode 100644 index b97c439..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/zkclient-0.10.jar and /dev/null differ diff --git a/out/artifacts/cl_stream_datasave_jar2/zookeeper-3.4.6.jar b/out/artifacts/cl_stream_datasave_jar2/zookeeper-3.4.6.jar deleted file mode 100644 index 7c340be..0000000 Binary files a/out/artifacts/cl_stream_datasave_jar2/zookeeper-3.4.6.jar and /dev/null differ diff --git a/pom.xml b/pom.xml deleted file mode 100644 index 53d4340..0000000 --- a/pom.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - 4.0.0 - - com.bfd.mf - cl_stream - pom - 2.0-SNAPSHOT - - - cl_stream_service - cl_stream_datasave - cl_stream_mybatis - serviceManager - dataSaveManager - cl_search_api - cl_offline_task - - - - UTF-8 - UTF-8 - 1.8 - true - - - - - - maven-compiler-plugin - - 1.8 - 1.8 - - - - - \ No newline at end of file diff --git a/serviceManager/pom.xml b/serviceManager/pom.xml deleted file mode 100644 index 8e91fbe..0000000 --- a/serviceManager/pom.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - cl_stream - com.bfd.mf - 2.0-SNAPSHOT - - 4.0.0 - - serviceManager - - - - - - \ No newline at end of file diff --git a/serviceManager/serviceManager.iml b/serviceManager/serviceManager.iml deleted file mode 100644 index bb03ec3..0000000 --- a/serviceManager/serviceManager.iml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/serviceManager/src/main/java/com/bfd/mf/entity/FieldInfo.java b/serviceManager/src/main/java/com/bfd/mf/entity/FieldInfo.java deleted file mode 100644 index 5d3185f..0000000 --- a/serviceManager/src/main/java/com/bfd/mf/entity/FieldInfo.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.bfd.mf.entity; - -import java.util.List; - -public class FieldInfo { - - private String kafka_type ; - - private List kafkaJsonString ; - - private List kafkaJsonArray ; - - public String getKafka_type() { - return kafka_type; - } - - public void setKafka_type(String kafka_type) { - this.kafka_type = kafka_type; - } - - public List getKafkaJsonString() { - return kafkaJsonString; - } - - public void setKafkaJsonString(List kafkaJsonString) { - this.kafkaJsonString = kafkaJsonString; - } - - public List getKafkaJsonArray() { - return kafkaJsonArray; - } - - public void setKafkaJsonArray(List kafkaJsonArray) { - this.kafkaJsonArray = kafkaJsonArray; - } - - - -} diff --git a/serviceManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java b/serviceManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java deleted file mode 100644 index 1dbe416..0000000 --- a/serviceManager/src/main/java/com/bfd/mf/entity/FieldNormaliz.java +++ /dev/null @@ -1,207 +0,0 @@ -package com.bfd.mf.entity; - -import java.io.Serializable; -import java.util.Map; -import java.util.Set; - -public class FieldNormaliz implements Serializable{ - - private static final long serialVersionUID = 1L; - - private int id ; - - private String kafkaName ; - - private int kafkaSerName ; - - private int esSerName ; - - private String esSuffixNames ; - - private String docType ; - - private int isSemtimentApi ; - - private boolean ishlKeyword ; - - private int bussinessType ; - - private Map fieldNormalizeContentMap ; - - private Map fieldNormalizeCommentMap ; - - private Map>> fieldDataMap ; - - private Map fieldInfo ; - - private String groupId ; - - private String createTime ; - - private String finshTime ; - - private int status ; - - private String projectName ; - - public String getKafkaName() { - return kafkaName; - } - - public void setKafkaName(String kafkaName) { - this.kafkaName = kafkaName; - } - - public int getKafkaSerName() { - return kafkaSerName; - } - - public void setKafkaSerName(int kafkaSerName) { - this.kafkaSerName = kafkaSerName; - } - - public int getEsSerName() { - return esSerName; - } - - public void setEsSerName(int esSerName) { - this.esSerName = esSerName; - } - - public String getDocType() { - return docType; - } - - public void setDocType(String docType) { - this.docType = docType; - } - - public int getIsSemtimentApi() { - return isSemtimentApi; - } - - public void setIsSemtimentApi(int isSemtimentApi) { - this.isSemtimentApi = isSemtimentApi; - } - - public int getBussinessType() { - return bussinessType; - } - - public void setBussinessType(int bussinessType) { - this.bussinessType = bussinessType; - } - - public Map getFieldNormalizeContentMap() { - return fieldNormalizeContentMap; - } - - public void setFieldNormalizeContentMap(Map fieldNormalizeContentMap) { - this.fieldNormalizeContentMap = fieldNormalizeContentMap; - } - - public Map getFieldNormalizeCommentMap() { - return fieldNormalizeCommentMap; - } - - public void setFieldNormalizeCommentMap(Map fieldNormalizeCommentMap) { - this.fieldNormalizeCommentMap = fieldNormalizeCommentMap; - } - - public Map>> getFieldDataMap() { - return fieldDataMap; - } - - public Map> getFieldDataMapByType(String type){ - return fieldDataMap.get(type); - } - - public void addFieldDataMap(String type, Map fixFieldData, Integer bussinessType){ - Set keys = fixFieldData.keySet() ; - Map> fieldMaps = fieldDataMap.get(bussinessType) ; - Map fieldMap = fieldMaps.get(type) ; - for(String key : keys){ - fieldMap.put(key, key) ; - } - fieldMaps.put(type, fieldMap); - fieldDataMap.put(bussinessType, fieldMaps) ; - } - - public void setFieldDataMap(Map>> fieldDataMap) { - this.fieldDataMap = fieldDataMap; - } - - public Map getFieldInfo() { - return fieldInfo; - } - - public void setFieldInfo(Map fieldInfo) { - this.fieldInfo = fieldInfo; - } - - public boolean isIshlKeyword() { - return ishlKeyword; - } - - public void setIshlKeyword(boolean ishlKeyword) { - this.ishlKeyword = ishlKeyword; - } - - public String getEsSuffixNames() { - return esSuffixNames; - } - - public void setEsSuffixNames(String esSuffixNames) { - this.esSuffixNames = esSuffixNames; - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getCreateTime() { - return createTime; - } - - public void setCreateTime(String createTime) { - this.createTime = createTime; - } - - public String getFinshTime() { - return finshTime; - } - - public void setFinshTime(String finshTime) { - this.finshTime = finshTime; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getProjectName() { - return projectName; - } - - public void setProjectName(String projectName) { - this.projectName = projectName; - } - - -} diff --git a/serviceManager/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java b/serviceManager/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java deleted file mode 100644 index 95cd84f..0000000 --- a/serviceManager/src/main/java/com/bfd/mf/service/rmi/ServiceManager.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.bfd.mf.service.rmi; - - -import com.bfd.mf.entity.FieldNormaliz; - -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.util.Map; - -public interface ServiceManager extends Remote{ - - public void addTaskName(FieldNormaliz fieldNormaliz) throws RemoteException; - - public void stopImprotTask(int kafkaSerName, String kafkaName) throws RemoteException ; - - public void startImprotTask(String kafkaName) throws RemoteException ; - - public String getNowImportEsNum(String indexSuffixName, String docType) throws RemoteException; - - public int getNowKafkaNum(Map paramMap) throws RemoteException ; -} diff --git a/serviceManager/src/main/main6.iml b/serviceManager/src/main/main6.iml deleted file mode 100644 index 908ad4f..0000000 --- a/serviceManager/src/main/main6.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/serviceManager/target/classes/com/bfd/mf/entity/FieldInfo.class b/serviceManager/target/classes/com/bfd/mf/entity/FieldInfo.class deleted file mode 100644 index 3a3109c..0000000 Binary files a/serviceManager/target/classes/com/bfd/mf/entity/FieldInfo.class and /dev/null differ diff --git a/serviceManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class b/serviceManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class deleted file mode 100644 index c1e93c5..0000000 Binary files a/serviceManager/target/classes/com/bfd/mf/entity/FieldNormaliz.class and /dev/null differ diff --git a/serviceManager/target/classes/com/bfd/mf/service/rmi/ServiceManager.class b/serviceManager/target/classes/com/bfd/mf/service/rmi/ServiceManager.class deleted file mode 100644 index 152927d..0000000 Binary files a/serviceManager/target/classes/com/bfd/mf/service/rmi/ServiceManager.class and /dev/null differ diff --git a/serviceManager/target/maven-archiver/pom.properties b/serviceManager/target/maven-archiver/pom.properties deleted file mode 100644 index 2b3a750..0000000 --- a/serviceManager/target/maven-archiver/pom.properties +++ /dev/null @@ -1,5 +0,0 @@ -#Generated by Maven -#Wed Sep 30 11:03:45 CST 2020 -version=2.0-SNAPSHOT -groupId=com.bfd.mf -artifactId=serviceManager diff --git a/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst deleted file mode 100644 index cca0173..0000000 --- a/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst +++ /dev/null @@ -1,3 +0,0 @@ -com\bfd\mf\entity\FieldNormaliz.class -com\bfd\mf\entity\FieldInfo.class -com\bfd\mf\service\rmi\ServiceManager.class diff --git a/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst deleted file mode 100644 index a7fd591..0000000 --- a/serviceManager/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +++ /dev/null @@ -1,3 +0,0 @@ -D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\SocialX_Stream_1.0\serviceManager\src\main\java\com\bfd\mf\service\rmi\ServiceManager.java -D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\SocialX_Stream_1.0\serviceManager\src\main\java\com\bfd\mf\entity\FieldInfo.java -D:\program\SocialX_Stream_1.0-20200922-v2-39e5a0d5a23e4dedce55432094ce26fc4b90efb1\datastream\SocialX_Stream_1.0\serviceManager\src\main\java\com\bfd\mf\entity\FieldNormaliz.java diff --git a/serviceManager/target/serviceManager-2.0-SNAPSHOT.jar b/serviceManager/target/serviceManager-2.0-SNAPSHOT.jar deleted file mode 100644 index 8a86a6f..0000000 Binary files a/serviceManager/target/serviceManager-2.0-SNAPSHOT.jar and /dev/null differ