Git
Threads by month
- ----- 2025 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
August 2011
- 8 participants
- 476 discussions

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15698-g3217f24
by Michal Čihař 18 Aug '11
by Michal Čihař 18 Aug '11
18 Aug '11
The branch, master has been updated
via 3217f24df0d6891e3783ed8295bbc98dfebe909a (commit)
via 922a5ca45b80bead07a5192d9d05f57560ce758e (commit)
via fc65172c63038bc2047524ebd04fb6bc3ff49a86 (commit)
via c2f52e26e2e36c651028872e8b9931421e1344e5 (commit)
via 610c4098e981c483712ce303050b15ef420dad82 (commit)
via 701c10ff751d59a52ae6b89e1393f09395769783 (commit)
via e9da8d747273129fc72e9e691466d6f44b808289 (commit)
via 9db34b87298111f1292b16b3440a9d2e67f7e1e8 (commit)
via e270c8df8abf3c57f2257e3dceb4863941b3b4a0 (commit)
via 29efa19261f5f6ba45bf6c77a989006e28b067ae (commit)
via d2961028822d0f606dfabf26326d0de4d2f0464e (commit)
via a59f4af3f9cb7a32c934edcc57c015e531f33057 (commit)
via 161710e01983b30a6ddf298114966ca9541737a0 (commit)
via 00548376b7aed29eec560ab1a4f14dc60440b540 (commit)
via 866a104db6c9978bf95e35488651093677e13d88 (commit)
via db28d8b1f727a8db8892b40cd053c163efce57ee (commit)
via 91ff2e25ba6573b4498e239561661c5a7a5c81f7 (commit)
via 0005c2cbeced9fb2e6a4fda171d0689a0a21e5e2 (commit)
via b3f92a21f9cfb464c130c997eaab165e8f690844 (commit)
via d44c8ddbf221da96d5ae45214882dab72734ebfd (commit)
via 9102eabc99c23e1632126646a2118607babf046e (commit)
via b29f3c3d01d0a90079e258afd828792e1febaf30 (commit)
via a5a9b06bc40f5eb39a3a19853f6522cd9b22af97 (commit)
via 42e908d64a9d4f4f3947f717a66772fc73b2dccc (commit)
via 54280fb1fd6af6eb306b0ebbf6d26428ba3c096a (commit)
via 0868fbf3511300ca9cd1a7e38c8d7f073f04e28d (commit)
via 972aaed554199cd626eea14bd7eebea06159758b (commit)
via 69b51155d9b7747924f3c3be8fd20ed46ad2ffa7 (commit)
via 494c178d8349a4dc3a4fbd33a617c65e7b5a7689 (commit)
via 3a37005ab0245dd8206985bcd49db9ccd76166ec (commit)
via 7139201d6ba2acaa034cf786aae9ff3a66c92570 (commit)
via c6dc72c20baeaab63f98c63cb604c78ad45753f2 (commit)
via f884e8e1cbe12497d31cba7a84d3f9fb7d693aa9 (commit)
via 3261e5e1741c2e84666321b94b430ea30d69978c (commit)
via 61fd30e902808fdb69c5947502e0beff739c2e0b (commit)
via e21f330170cffbb993cea2c9cd721c540b752f20 (commit)
via ffbdac704da17bf03f6e7abe0adf49d9835252d7 (commit)
via 224e0b6ddf2362c3536f23a14ecdefa8ecc387d7 (commit)
via 40d64616194f9e36fd341c4f84cdba34b531b58d (commit)
via 196e5a07ff8dd8c9aa3d7f2de866151d10f9ee60 (commit)
via 77007091b7543deecf05a6281c21f567997434b0 (commit)
via 2513900ba9a9bcdb346a7d93b49c0bbc0b7a0be9 (commit)
via df7604a7e7026d1e168e3fd65e010e67a855d487 (commit)
via 9984c2ffaa408cf252fbbf488c0a8373a0d8b028 (commit)
via 95b7783b64ce6b242a4c66816dbe0289276b542a (commit)
via 1bcbc0a9b24abf1d19101459ec087f428cdd4d66 (commit)
via 4406805cd81e5749030ca7589fd64385691cecbe (commit)
via 8cd8081761285f83471bddeef51c64252be17f4d (commit)
via 13ba9ce44af7b9c58f445e4163ee15d8f29e81ee (commit)
via 93b78c3c3f5c508ed0f4d2e2050bef69886daae5 (commit)
via e8a8107ed9993cef2e66b868e805737f5fd83c57 (commit)
via 547ea92d175171fd2279dd4f1f4c72d57bb899e6 (commit)
via c74e97e597e4929392e0e50d25a256714bf9252f (commit)
via 4d7f2bea748281dca4c0c7cea06c3711ec8fbb50 (commit)
via ac0b3d4221e93eaf2262b453b6ce9181cce0e25f (commit)
via fbdbe889e5d5fbca1d7f7af2384ac4865d25ab33 (commit)
via 19cbe0ed94eb3c7f7c535d3d999800e8e2ebf7a6 (commit)
via 87f13c365c783f8d36fed448cc931f09551fadd5 (commit)
via 5a2a434aa25d25ff6f0ec1099b7e7cc32de371e0 (commit)
via 7a30d433f5f7de5fd6a4e7c92639acaa25cb3385 (commit)
via 3514ec156ba63df22c69409f59c6bbe6fda87eca (commit)
via fa88ee25febf6e812355d6aae2b53edb878f8762 (commit)
via b7a29702abdeb8d1b78044b325ec8b69a6d7be77 (commit)
via 79782e517d95c0e227798c986cca30f3a0bd2fd6 (commit)
via 9d1b774e840f6d64f24805bd6746f688d4c2551a (commit)
via 84f45312af223da9b6c272413708cfc790211506 (commit)
via dac9192a3862104d09c4330a73ed43d5f0343b64 (commit)
via 18841f8078ba99e2d8f557012a1fb26fe4bd488e (commit)
via 98b26a9b2053ad1eae67517ee57e17787850a450 (commit)
via fdd5b081339c242e687cd4b800f13723d8807633 (commit)
via c815b1ef5053ee9761769a29eeaaf9c2c65adfbb (commit)
via 046f79ee40f76a948336c0ebe537897c458ef59d (commit)
via 57f12c4a04194feb31cf8f5f6e050238cb870c6f (commit)
via 5f6775931a0721f425ca5306420dbb8d33397844 (commit)
via c27f650c30edf76496c1c2e826a337857964b297 (commit)
via 9a7c14698e02067e7bde8c63673a02e15030ff74 (commit)
via 6189e5b84f986f916a3b081604ad310eb3c3aa67 (commit)
via ce93f7a920e5134e358e3546c51f823a457e8e62 (commit)
via 02afc390116150ca6d600b7306e37f1e20ea5a26 (commit)
via f701fd26e9ad5931d6f216f987f8c61c095f8c5d (commit)
via b9e6a67c9d7597796fbb315eccf9d484e9becdf8 (commit)
via 918dbee07fd66c617cd60b15bcce42c6f8597895 (commit)
via 331208d33aaad13996f74c989e443fbbb976a433 (commit)
from 07f3f59e22ad0c67eb24f91c58a88898e771fb04 (commit)
- Log -----------------------------------------------------------------
commit 3217f24df0d6891e3783ed8295bbc98dfebe909a
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:40:21 2011 +0200
Translation update done using Pootle.
commit 922a5ca45b80bead07a5192d9d05f57560ce758e
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:37:45 2011 +0200
Translation update done using Pootle.
commit fc65172c63038bc2047524ebd04fb6bc3ff49a86
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:37:40 2011 +0200
Translation update done using Pootle.
commit c2f52e26e2e36c651028872e8b9931421e1344e5
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:37:12 2011 +0200
Translation update done using Pootle.
commit 610c4098e981c483712ce303050b15ef420dad82
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:36:39 2011 +0200
Translation update done using Pootle.
commit 701c10ff751d59a52ae6b89e1393f09395769783
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:35:41 2011 +0200
Translation update done using Pootle.
commit e9da8d747273129fc72e9e691466d6f44b808289
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:35:34 2011 +0200
Translation update done using Pootle.
commit 9db34b87298111f1292b16b3440a9d2e67f7e1e8
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:33:09 2011 +0200
Translation update done using Pootle.
commit e270c8df8abf3c57f2257e3dceb4863941b3b4a0
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:12:22 2011 +0200
Translation update done using Pootle.
commit 29efa19261f5f6ba45bf6c77a989006e28b067ae
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 10:11:06 2011 +0200
Translation update done using Pootle.
commit d2961028822d0f606dfabf26326d0de4d2f0464e
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 09:57:17 2011 +0200
Translation update done using Pootle.
commit a59f4af3f9cb7a32c934edcc57c015e531f33057
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 09:55:20 2011 +0200
Translation update done using Pootle.
commit 161710e01983b30a6ddf298114966ca9541737a0
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 09:36:28 2011 +0200
Translation update done using Pootle.
commit 00548376b7aed29eec560ab1a4f14dc60440b540
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 09:16:51 2011 +0200
Translation update done using Pootle.
commit 866a104db6c9978bf95e35488651093677e13d88
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 09:14:19 2011 +0200
Translation update done using Pootle.
commit db28d8b1f727a8db8892b40cd053c163efce57ee
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 08:58:34 2011 +0200
Translation update done using Pootle.
commit 91ff2e25ba6573b4498e239561661c5a7a5c81f7
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 08:58:14 2011 +0200
Translation update done using Pootle.
commit 0005c2cbeced9fb2e6a4fda171d0689a0a21e5e2
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:19:22 2011 +0200
Translation update done using Pootle.
commit b3f92a21f9cfb464c130c997eaab165e8f690844
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:18:17 2011 +0200
Translation update done using Pootle.
commit d44c8ddbf221da96d5ae45214882dab72734ebfd
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:14:06 2011 +0200
Translation update done using Pootle.
commit 9102eabc99c23e1632126646a2118607babf046e
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:13:16 2011 +0200
Translation update done using Pootle.
commit b29f3c3d01d0a90079e258afd828792e1febaf30
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:11:56 2011 +0200
Translation update done using Pootle.
commit a5a9b06bc40f5eb39a3a19853f6522cd9b22af97
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:11:01 2011 +0200
Translation update done using Pootle.
commit 42e908d64a9d4f4f3947f717a66772fc73b2dccc
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:08:01 2011 +0200
Translation update done using Pootle.
commit 54280fb1fd6af6eb306b0ebbf6d26428ba3c096a
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:07:02 2011 +0200
Translation update done using Pootle.
commit 0868fbf3511300ca9cd1a7e38c8d7f073f04e28d
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:04:48 2011 +0200
Translation update done using Pootle.
commit 972aaed554199cd626eea14bd7eebea06159758b
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:04:37 2011 +0200
Translation update done using Pootle.
commit 69b51155d9b7747924f3c3be8fd20ed46ad2ffa7
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:02:39 2011 +0200
Translation update done using Pootle.
commit 494c178d8349a4dc3a4fbd33a617c65e7b5a7689
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:01:30 2011 +0200
Translation update done using Pootle.
commit 3a37005ab0245dd8206985bcd49db9ccd76166ec
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:01:21 2011 +0200
Translation update done using Pootle.
commit 7139201d6ba2acaa034cf786aae9ff3a66c92570
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:01:10 2011 +0200
Translation update done using Pootle.
commit c6dc72c20baeaab63f98c63cb604c78ad45753f2
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:01:08 2011 +0200
Translation update done using Pootle.
commit f884e8e1cbe12497d31cba7a84d3f9fb7d693aa9
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:01:05 2011 +0200
Translation update done using Pootle.
commit 3261e5e1741c2e84666321b94b430ea30d69978c
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 07:00:55 2011 +0200
Translation update done using Pootle.
commit 61fd30e902808fdb69c5947502e0beff739c2e0b
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:58:53 2011 +0200
Translation update done using Pootle.
commit e21f330170cffbb993cea2c9cd721c540b752f20
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:58:44 2011 +0200
Translation update done using Pootle.
commit ffbdac704da17bf03f6e7abe0adf49d9835252d7
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:57:10 2011 +0200
Translation update done using Pootle.
commit 224e0b6ddf2362c3536f23a14ecdefa8ecc387d7
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:56:51 2011 +0200
Translation update done using Pootle.
commit 40d64616194f9e36fd341c4f84cdba34b531b58d
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:56:38 2011 +0200
Translation update done using Pootle.
commit 196e5a07ff8dd8c9aa3d7f2de866151d10f9ee60
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:55:38 2011 +0200
Translation update done using Pootle.
commit 77007091b7543deecf05a6281c21f567997434b0
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:54:55 2011 +0200
Translation update done using Pootle.
commit 2513900ba9a9bcdb346a7d93b49c0bbc0b7a0be9
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:54:24 2011 +0200
Translation update done using Pootle.
commit df7604a7e7026d1e168e3fd65e010e67a855d487
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:53:35 2011 +0200
Translation update done using Pootle.
commit 9984c2ffaa408cf252fbbf488c0a8373a0d8b028
Author: Burak Yavuz <hitowerdigit(a)hotmail.com>
Date: Thu Aug 18 06:52:25 2011 +0200
Translation update done using Pootle.
commit 95b7783b64ce6b242a4c66816dbe0289276b542a
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:48:20 2011 +0200
Translation update done using Pootle.
commit 1bcbc0a9b24abf1d19101459ec087f428cdd4d66
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:47:55 2011 +0200
Translation update done using Pootle.
commit 4406805cd81e5749030ca7589fd64385691cecbe
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:45:26 2011 +0200
Translation update done using Pootle.
commit 8cd8081761285f83471bddeef51c64252be17f4d
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:44:57 2011 +0200
Translation update done using Pootle.
commit 13ba9ce44af7b9c58f445e4163ee15d8f29e81ee
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:43:31 2011 +0200
Translation update done using Pootle.
commit 93b78c3c3f5c508ed0f4d2e2050bef69886daae5
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:43:06 2011 +0200
Translation update done using Pootle.
commit e8a8107ed9993cef2e66b868e805737f5fd83c57
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:41:56 2011 +0200
Translation update done using Pootle.
commit 547ea92d175171fd2279dd4f1f4c72d57bb899e6
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:41:18 2011 +0200
Translation update done using Pootle.
commit c74e97e597e4929392e0e50d25a256714bf9252f
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:40:21 2011 +0200
Translation update done using Pootle.
commit 4d7f2bea748281dca4c0c7cea06c3711ec8fbb50
Merge: ac0b3d4 07f3f59
Author: Pootle server <pootle(a)cihar.com>
Date: Thu Aug 18 00:40:12 2011 +0200
Merge remote-tracking branch 'origin/master'
commit ac0b3d4221e93eaf2262b453b6ce9181cce0e25f
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:37:46 2011 +0200
Translation update done using Pootle.
commit fbdbe889e5d5fbca1d7f7af2384ac4865d25ab33
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:37:40 2011 +0200
Translation update done using Pootle.
commit 19cbe0ed94eb3c7f7c535d3d999800e8e2ebf7a6
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:37:29 2011 +0200
Translation update done using Pootle.
commit 87f13c365c783f8d36fed448cc931f09551fadd5
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:37:06 2011 +0200
Translation update done using Pootle.
commit 5a2a434aa25d25ff6f0ec1099b7e7cc32de371e0
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:36:40 2011 +0200
Translation update done using Pootle.
commit 7a30d433f5f7de5fd6a4e7c92639acaa25cb3385
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:36:25 2011 +0200
Translation update done using Pootle.
commit 3514ec156ba63df22c69409f59c6bbe6fda87eca
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:36:04 2011 +0200
Translation update done using Pootle.
commit fa88ee25febf6e812355d6aae2b53edb878f8762
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:35:28 2011 +0200
Translation update done using Pootle.
commit b7a29702abdeb8d1b78044b325ec8b69a6d7be77
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:35:22 2011 +0200
Translation update done using Pootle.
commit 79782e517d95c0e227798c986cca30f3a0bd2fd6
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:35:08 2011 +0200
Translation update done using Pootle.
commit 9d1b774e840f6d64f24805bd6746f688d4c2551a
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:34:14 2011 +0200
Translation update done using Pootle.
commit 84f45312af223da9b6c272413708cfc790211506
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:34:06 2011 +0200
Translation update done using Pootle.
commit dac9192a3862104d09c4330a73ed43d5f0343b64
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:33:29 2011 +0200
Translation update done using Pootle.
commit 18841f8078ba99e2d8f557012a1fb26fe4bd488e
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:33:08 2011 +0200
Translation update done using Pootle.
commit 98b26a9b2053ad1eae67517ee57e17787850a450
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:31:17 2011 +0200
Translation update done using Pootle.
commit fdd5b081339c242e687cd4b800f13723d8807633
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:28:16 2011 +0200
Translation update done using Pootle.
commit c815b1ef5053ee9761769a29eeaaf9c2c65adfbb
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:27:54 2011 +0200
Translation update done using Pootle.
commit 046f79ee40f76a948336c0ebe537897c458ef59d
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:27:50 2011 +0200
Translation update done using Pootle.
commit 57f12c4a04194feb31cf8f5f6e050238cb870c6f
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:27:46 2011 +0200
Translation update done using Pootle.
commit 5f6775931a0721f425ca5306420dbb8d33397844
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:27:40 2011 +0200
Translation update done using Pootle.
commit c27f650c30edf76496c1c2e826a337857964b297
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:27:36 2011 +0200
Translation update done using Pootle.
commit 9a7c14698e02067e7bde8c63673a02e15030ff74
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:56 2011 +0200
Translation update done using Pootle.
commit 6189e5b84f986f916a3b081604ad310eb3c3aa67
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:50 2011 +0200
Translation update done using Pootle.
commit ce93f7a920e5134e358e3546c51f823a457e8e62
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:32 2011 +0200
Translation update done using Pootle.
commit 02afc390116150ca6d600b7306e37f1e20ea5a26
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:28 2011 +0200
Translation update done using Pootle.
commit f701fd26e9ad5931d6f216f987f8c61c095f8c5d
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:26 2011 +0200
Translation update done using Pootle.
commit b9e6a67c9d7597796fbb315eccf9d484e9becdf8
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:22 2011 +0200
Translation update done using Pootle.
commit 918dbee07fd66c617cd60b15bcce42c6f8597895
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:26:18 2011 +0200
Translation update done using Pootle.
commit 331208d33aaad13996f74c989e443fbbb976a433
Author: Domen <dbc334(a)gmail.com>
Date: Thu Aug 18 00:25:36 2011 +0200
Translation update done using Pootle.
-----------------------------------------------------------------------
Summary of changes:
po/sl.po | 99 +++++++++++++++++++++++++++++++++++--------------------------
po/tr.po | 96 +++++++++++++++++++++++++++++++++++------------------------
2 files changed, 114 insertions(+), 81 deletions(-)
diff --git a/po/sl.po b/po/sl.po
index 877790d..5911f22 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -4,15 +4,15 @@ msgstr ""
"Project-Id-Version: phpMyAdmin 3.5.0-dev\n"
"Report-Msgid-Bugs-To: phpmyadmin-devel(a)lists.sourceforge.net\n"
"POT-Creation-Date: 2011-08-17 16:58+0200\n"
-"PO-Revision-Date: 2011-08-16 22:58+0200\n"
+"PO-Revision-Date: 2011-08-18 00:48+0200\n"
"Last-Translator: Domen <dbc334(a)gmail.com>\n"
"Language-Team: slovenian <sl(a)li.org>\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
-"%100==4 ? 2 : 3);\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
+"n%100==4 ? 2 : 3);\n"
"X-Generator: Pootle 2.0.5\n"
#: browse_foreigners.php:35 browse_foreigners.php:53 js/messages.php:316
@@ -855,10 +855,10 @@ msgid "Dump has been saved to file %s."
msgstr "Dump je shranjen v datoteko %s."
#: gis_data_editor.php:84
-#, fuzzy, php-format
+#, php-format
#| msgid "Values for the column \"%s\""
msgid "Value for the column \"%s\""
-msgstr "Vrednosti za stolpec \"%s\""
+msgstr "Vrednost za stolpec \"%s\""
#: gis_data_editor.php:113 tbl_gis_visualization.php:172
msgid "Use OpenStreetMaps as Base Layer"
@@ -866,7 +866,7 @@ msgstr "Uporabi OpenStreetMaps kot osnovni sloj"
#: gis_data_editor.php:134
msgid "SRID"
-msgstr ""
+msgstr "SRID"
#: gis_data_editor.php:151 js/messages.php:289
#: libraries/display_tbl.lib.php:663
@@ -876,66 +876,60 @@ msgstr "Geometrija"
#: gis_data_editor.php:172 gis_data_editor.php:194 gis_data_editor.php:240
#: gis_data_editor.php:290 js/messages.php:286
msgid "Point"
-msgstr ""
+msgstr "Točka"
#: gis_data_editor.php:173 gis_data_editor.php:195 gis_data_editor.php:241
#: gis_data_editor.php:291 js/messages.php:284
msgid "X"
-msgstr ""
+msgstr "X"
#: gis_data_editor.php:175 gis_data_editor.php:197 gis_data_editor.php:243
#: gis_data_editor.php:293 js/messages.php:285
msgid "Y"
-msgstr ""
+msgstr "Y"
#: gis_data_editor.php:202 gis_data_editor.php:246 gis_data_editor.php:296
#: js/messages.php:292
-#, fuzzy
#| msgid "Add routine"
msgid "Add a point"
-msgstr "Dodaj rutino"
+msgstr "Dodaj točko"
#: gis_data_editor.php:218 js/messages.php:287
-#, fuzzy
#| msgid "Lines terminated by"
msgid "Linestring"
-msgstr "Vrstice zaključene z"
+msgstr "Daljica"
#: gis_data_editor.php:221 gis_data_editor.php:275
msgid "Outer Ring:"
-msgstr ""
+msgstr "Zunanji obroč:"
#: gis_data_editor.php:223 gis_data_editor.php:277 js/messages.php:290
msgid "Inner Ring"
-msgstr ""
+msgstr "Notranji obroč"
#: gis_data_editor.php:248
-#, fuzzy
#| msgid "Add a new User"
msgid "Add a linestring"
-msgstr "Dodaj novega uporabnika"
+msgstr "Dodaj daljico"
#: gis_data_editor.php:248 gis_data_editor.php:298 js/messages.php:293
-#, fuzzy
#| msgid "Add a new User"
msgid "Add an inner ring"
-msgstr "Dodaj novega uporabnika"
+msgstr "Dodaj notranji obroč"
#: gis_data_editor.php:262 js/messages.php:288
msgid "Polygon"
-msgstr ""
+msgstr "Večkotnik"
#: gis_data_editor.php:300 js/messages.php:294
-#, fuzzy
#| msgid "Add column"
msgid "Add a polygon"
-msgstr "Dodaj stolpec"
+msgstr "Dodaj večkotnik"
#: gis_data_editor.php:304
-#, fuzzy
#| msgid "Geometry"
msgid "Add geometry"
-msgstr "Geometrija"
+msgstr "Dodaj geometrijo"
#: gis_data_editor.php:312
msgid ""
@@ -1229,6 +1223,10 @@ msgid ""
"likely that your current configuration will not work anymore. Please reset "
"your configuration to default in the <i>Settings</i> menu."
msgstr ""
+"Konfiguracija razvrstitve grafikonov v lokalni shrambi brskalnika ni več "
+"združljiva z novejšo različico pogovornega okna nadziranja. Zelo verjetno "
+"je, da vaša trenutna konfiguracija ne bo več delovala. Prosimo, ponastavite "
+"svojo konfiguracijo na privzeto v meniju <i>Nastavitve</i>."
#: js/messages.php:96
msgid "Query cache efficiency"
@@ -1549,6 +1547,9 @@ msgid ""
"This is most likely because your session expired. Reloading the page and "
"reentering your credentials should help."
msgstr ""
+"Med zahtevo podatkov novega grafikona je strežnik vrnil neveljavni odziv. To "
+"se je najverjetneje zgodilo, ker je vaša seja potekla. Ponovno nalaganje "
+"strani in ponovni vnos poveril bi morala pomagati."
#: js/messages.php:184
msgid "Reload page"
@@ -1753,10 +1754,9 @@ msgid "Show search criteria"
msgstr "Prikaži iskalne pogoje"
#: js/messages.php:262 libraries/tbl_select.lib.php:150
-#, fuzzy
#| msgid "Search"
msgid "Zoom Search"
-msgstr "Iskanje"
+msgstr "Iskanje s povečevanjem"
#: js/messages.php:264
msgid "Each point represents a data row."
@@ -1764,11 +1764,11 @@ msgstr "Vsaka točka predstavlja podatkovno vrstico."
#: js/messages.php:266
msgid "Hovering over a point will show its label."
-msgstr ""
+msgstr "Prehod z miško čez točko bo pokazalo njeno oznako."
#: js/messages.php:268
msgid "Drag and select an area in the plot to zoom into it."
-msgstr ""
+msgstr "Povlecite in izberite območje na izrisu, ki ga želite povečati."
#: js/messages.php:270
msgid "Click reset zoom link to come back to original state."
@@ -1782,11 +1782,11 @@ msgstr ""
#: js/messages.php:274
msgid "The plot can be resized by dragging it along the bottom right corner."
-msgstr ""
+msgstr "Izris lahko povečate tako, da ga vlečete ob spodnjem desnem kotu."
#: js/messages.php:276
msgid "Strings are converted into integer for plotting"
-msgstr ""
+msgstr "Nizi so pri izrisovanju pretvorjeni v cela števila"
#: js/messages.php:278
msgid "Select two columns"
@@ -1807,7 +1807,7 @@ msgstr "Kopiraj"
#: js/messages.php:291
msgid "Outer Ring"
-msgstr ""
+msgstr "Zunanji obroč"
#: js/messages.php:297
msgid "Add columns"
@@ -2167,6 +2167,8 @@ msgstr "Sekunda"
#, php-format
msgid "Failed formatting string for rule '%s'. PHP threw following error: %s"
msgstr ""
+"Oblikovanje niza za pravilo '%s' je spodletelo. PHP je vrnil naslednjo "
+"napako: %s"
#: libraries/Config.class.php:1159
msgid "Font size"
@@ -6695,29 +6697,30 @@ msgstr "Uvozi denarne enote <i>(npr. $5.00 v 5.00)</i>"
#: libraries/import/shp.php:14
msgid "ESRI Shape File"
-msgstr ""
+msgstr "Datoteka oblik ESRI"
#: libraries/import/shp.php:254
#, php-format
msgid "There was an error importing the ESRI shape file: \"%s\"."
-msgstr ""
+msgstr "Med uvažanjem datoteke oblik ESRI je prišlo do napake: \"%s\"."
#: libraries/import/shp.php:310
msgid ""
"You tried to import an invalid file or the imported file contains invalid "
"data"
msgstr ""
+"Poskušali ste uvoziti neveljavno datoteko ali pa uvožena datoteka vsebuje "
+"neveljavne podatke"
#: libraries/import/shp.php:312
#, php-format
msgid "MySQL Spatial Extension does not support ESRI type \"%s\"."
-msgstr ""
+msgstr "Prostorska razširitev MySQL ne podpira ESRI vrste \"%s\"."
#: libraries/import/shp.php:350
-#, fuzzy
#| msgid "This page does not contain any tables!"
msgid "The imported file does not contain any data"
-msgstr "Ta stran ne vsebuje nobenih tabel!"
+msgstr "Uvožena datoteka ne vsebuje nobenih podatkov"
#: libraries/import/sql.php:33
msgid "SQL compatibility mode:"
@@ -8042,10 +8045,9 @@ msgid "Table Search"
msgstr "Iskanje po tabeli"
#: libraries/tbl_select.lib.php:229 tbl_change.php:994
-#, fuzzy
#| msgid "Insert"
msgid "Edit/Insert"
-msgstr "Vstavi"
+msgstr "Uredi/Vstavi"
#: libraries/transformations/application_octetstream__download.inc.php:10
msgid ""
@@ -10339,6 +10341,10 @@ msgid ""
"table is supported by MySQL 5.1.6 and onwards. You may still use the server "
"charting features however."
msgstr ""
+"Žal vaš strežnik zbirk podatkov ne podpira beleženja v tabelo, ki je "
+"zahtevano za analiziranje dnevnikov zbirk podatov s phpMyAdmin. Beleženje v "
+"tabelo podpira MySQL 5.1.6 in novejši. Kljub temu lahko še vedno uporabljate "
+"strežniške zmožnosti izrisa grafikonov."
#: server_status.php:1508
msgid "Using the monitor:"
@@ -11672,6 +11678,8 @@ msgstr "Neprekinjeno delovanje krajše od enega dneva"
#: po/advisory_rules.php:6
msgid "Uptime is less than 1 day, performance tuning may not be accurate."
msgstr ""
+"Neprekinjeno delovanje je krajše od enega dneva; nastavitev zmogljivosti "
+"morda ni točna."
#: po/advisory_rules.php:7
msgid ""
@@ -11693,6 +11701,8 @@ msgid ""
"Fewer than 1,000 questions have been run against this server. The "
"recommendations may not be accurate."
msgstr ""
+"Na tem strežniku je bilo zagnanih manj kot 1.000 vprašanj. Priporočila morda "
+"niso točna."
#: po/advisory_rules.php:12
msgid ""
@@ -11753,6 +11763,8 @@ msgid ""
"long_query_time is set to 10 seconds or more, thus only slow queries that "
"take above 10 seconds are logged."
msgstr ""
+"long_query_time je nastavljen na 10 sekund ali več, zato so zabeležene samo "
+"počasne poizvedbe, ki trajajo več kot 10 sekund."
#: po/advisory_rules.php:27
msgid ""
@@ -11784,10 +11796,9 @@ msgid "log_slow_queries is set to 'OFF'"
msgstr "log_slow_queries je nastavljen na 'OFF'"
#: po/advisory_rules.php:35
-#, fuzzy
#| msgid "Clear series"
msgid "Release Series"
-msgstr "Počisti serije"
+msgstr "Serije izdaj"
#: po/advisory_rules.php:36
msgid "The MySQL server version less then 5.1."
@@ -12338,12 +12349,13 @@ msgstr ""
#: po/advisory_rules.php:172
msgid "You may need to increase {key_buffer_size}."
-msgstr ""
+msgstr "Mord boste morali povečati {key_buffer_size}."
#: po/advisory_rules.php:173
#, php-format
msgid "Index reads from memory: %s%%, this value should be above 95%%"
msgstr ""
+"Branj indeksov iz pomnilnika: %s %%; ta vrednost bi morala biti nad 95 %%"
#: po/advisory_rules.php:175
msgid "Rate of table open"
@@ -12578,6 +12590,9 @@ msgid ""
"MySQL properly. This can be due to network issues or code not closing a "
"database handler properly. Check your network and code."
msgstr ""
+"Odjemalci so ponavadi prekinjeni, ker niso pravilno zaprli svoje povezave z "
+"MySQL. To je lahko zaradi omrežnih težav ali pa koda ne zapira pravilno "
+"upravljavca zbirk podatkov. Preverite svoje omrežje in kodo."
#: po/advisory_rules.php:238
#, php-format
@@ -12726,7 +12741,7 @@ msgstr ""
#: po/advisory_rules.php:268
msgid "concurrent_insert is set to 0"
-msgstr ""
+msgstr "concurrent_insert je nastavljeno na 0"
#, fuzzy
#~ msgid "memcached usage"
diff --git a/po/tr.po b/po/tr.po
index 72536df..40c0dd2 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -4,7 +4,7 @@ msgstr ""
"Project-Id-Version: phpMyAdmin 3.5.0-dev\n"
"Report-Msgid-Bugs-To: phpmyadmin-devel(a)lists.sourceforge.net\n"
"POT-Creation-Date: 2011-08-17 16:58+0200\n"
-"PO-Revision-Date: 2011-08-16 16:49+0200\n"
+"PO-Revision-Date: 2011-08-18 10:40+0200\n"
"Last-Translator: Burak Yavuz <hitowerdigit(a)hotmail.com>\n"
"Language-Team: turkish <tr(a)li.org>\n"
"Language: tr\n"
@@ -847,10 +847,10 @@ msgid "Dump has been saved to file %s."
msgstr "Döküm, %s dosyasına kaydedildi."
#: gis_data_editor.php:84
-#, fuzzy, php-format
+#, php-format
#| msgid "Values for the column \"%s\""
msgid "Value for the column \"%s\""
-msgstr "\"%s\" sütunu için değerler"
+msgstr "\"%s\" sütunu için değer"
#: gis_data_editor.php:113 tbl_gis_visualization.php:172
msgid "Use OpenStreetMaps as Base Layer"
@@ -858,7 +858,7 @@ msgstr "Taban Katman olarak OpenStreetMaps kullan"
#: gis_data_editor.php:134
msgid "SRID"
-msgstr ""
+msgstr "SRID"
#: gis_data_editor.php:151 js/messages.php:289
#: libraries/display_tbl.lib.php:663
@@ -868,72 +868,68 @@ msgstr "Geometri"
#: gis_data_editor.php:172 gis_data_editor.php:194 gis_data_editor.php:240
#: gis_data_editor.php:290 js/messages.php:286
msgid "Point"
-msgstr ""
+msgstr "Nokta"
#: gis_data_editor.php:173 gis_data_editor.php:195 gis_data_editor.php:241
#: gis_data_editor.php:291 js/messages.php:284
msgid "X"
-msgstr ""
+msgstr "X"
#: gis_data_editor.php:175 gis_data_editor.php:197 gis_data_editor.php:243
#: gis_data_editor.php:293 js/messages.php:285
msgid "Y"
-msgstr ""
+msgstr "Y"
#: gis_data_editor.php:202 gis_data_editor.php:246 gis_data_editor.php:296
#: js/messages.php:292
-#, fuzzy
#| msgid "Add routine"
msgid "Add a point"
-msgstr "Yordam ekle"
+msgstr "Nokta ekle"
#: gis_data_editor.php:218 js/messages.php:287
-#, fuzzy
#| msgid "Lines terminated by"
msgid "Linestring"
-msgstr "Satırı sonlandıran:"
+msgstr "Satır dizgisi"
#: gis_data_editor.php:221 gis_data_editor.php:275
msgid "Outer Ring:"
-msgstr ""
+msgstr "Dış Halka:"
#: gis_data_editor.php:223 gis_data_editor.php:277 js/messages.php:290
msgid "Inner Ring"
-msgstr ""
+msgstr "İç Halka"
#: gis_data_editor.php:248
-#, fuzzy
#| msgid "Add a new User"
msgid "Add a linestring"
-msgstr "Yeni Kullanıcı ekle"
+msgstr "Satır dizgisi ekle"
#: gis_data_editor.php:248 gis_data_editor.php:298 js/messages.php:293
-#, fuzzy
#| msgid "Add a new User"
msgid "Add an inner ring"
-msgstr "Yeni Kullanıcı ekle"
+msgstr "İç halka ekle"
#: gis_data_editor.php:262 js/messages.php:288
msgid "Polygon"
-msgstr ""
+msgstr "Poligon"
#: gis_data_editor.php:300 js/messages.php:294
-#, fuzzy
#| msgid "Add column"
msgid "Add a polygon"
-msgstr "Sütun ekle"
+msgstr "Poligon ekle"
#: gis_data_editor.php:304
-#, fuzzy
#| msgid "Geometry"
msgid "Add geometry"
-msgstr "Geometri"
+msgstr "Geometri ekle"
#: gis_data_editor.php:312
msgid ""
"Chose \"GeomFromText\" from the \"Function\" column and paste the below "
"string into the \"Value\" field"
msgstr ""
+"\"Function\" sütunundan \"GeomFromText\" seçin ve \"Value\" alanı içine alttaki "
+"dizgiyi yapıştırın"
#: import.php:57
#, php-format
@@ -1211,7 +1207,6 @@ msgid "Query statistics"
msgstr "Sorgu istatistikleri"
#: js/messages.php:93
-#, fuzzy
#| msgid "Local monitor configuration icompatible"
msgid "Local monitor configuration incompatible"
msgstr "Yerel izleme yapılandırması uyumsuz"
@@ -1562,7 +1557,7 @@ msgstr "Etkilenen satırlar:"
msgid "Failed parsing config file. It doesn't seem to be valid JSON code"
msgstr ""
"Yapılandırma dosyasının ayrıştırılması başarısız. Bu geçerli JSON kodu "
-"görünmüyor."
+"görünmüyor"
#: js/messages.php:189
msgid ""
@@ -1810,7 +1805,7 @@ msgstr "Kopyala"
#: js/messages.php:291
msgid "Outer Ring"
-msgstr ""
+msgstr "Dış Halka"
#: js/messages.php:297
msgid "Add columns"
@@ -2175,6 +2170,8 @@ msgstr "Saniye"
#, php-format
msgid "Failed formatting string for rule '%s'. PHP threw following error: %s"
msgstr ""
+"'%s' kuralı için dizgi biçimlendirme başarısız. PHP aşağıdaki hatayı "
+"yöneltti: %s"
#: libraries/Config.class.php:1159
msgid "Font size"
@@ -6718,29 +6715,30 @@ msgstr "Parasalları içe aktar <i>(örn. $5.00'ı 5.00'a)</i>"
#: libraries/import/shp.php:14
msgid "ESRI Shape File"
-msgstr ""
+msgstr "ESRI Şekil Dosyası"
#: libraries/import/shp.php:254
#, php-format
msgid "There was an error importing the ESRI shape file: \"%s\"."
-msgstr ""
+msgstr "ESRI şekil dosyasının içe aktarılmasında hata var: \"%s\"."
#: libraries/import/shp.php:310
msgid ""
"You tried to import an invalid file or the imported file contains invalid "
"data"
msgstr ""
+"Geçersiz bir dosyayı içe aktarmayı deniyorsunuz ya da içe aktarılan dosya "
+"geçersiz veri içeriyor"
#: libraries/import/shp.php:312
#, php-format
msgid "MySQL Spatial Extension does not support ESRI type \"%s\"."
-msgstr ""
+msgstr "MySQL Uzaysal Uzantısı ESRI türü \"%s\" desteklemiyor."
#: libraries/import/shp.php:350
-#, fuzzy
#| msgid "This page does not contain any tables!"
msgid "The imported file does not contain any data"
-msgstr "Bu sayfa herhangi bir tablo içermiyor!"
+msgstr "İçe aktarılan dosya herhangi bir veri içermiyor"
#: libraries/import/sql.php:33
msgid "SQL compatibility mode:"
@@ -7907,7 +7905,7 @@ msgstr "END RAW"
#: libraries/sqlparser.lib.php:382
msgid "Automatically appended backtick to the end of query!"
-msgstr "Otomatik olarak sorgunun sonuna ters işaret ekle"
+msgstr "Otomatik olarak sorgunun sonuna ters işaret ekle!"
#: libraries/sqlparser.lib.php:385
msgid "Unclosed quote"
@@ -8065,10 +8063,9 @@ msgid "Table Search"
msgstr "Tablo Arama"
#: libraries/tbl_select.lib.php:229 tbl_change.php:994
-#, fuzzy
#| msgid "Insert"
msgid "Edit/Insert"
-msgstr "Ekle"
+msgstr "Düzenle/Ekle"
#: libraries/transformations/application_octetstream__download.inc.php:10
msgid ""
@@ -9599,7 +9596,7 @@ msgid ""
"the <a href=\"#replication\">replication section</a>."
msgstr ""
"Sunucudaki kopya etme durumuyla ilgili daha ayrıntılı bilgi için lütfen <a "
-"href=#replication>kopya etme bölümünü</a> ziyaret edin."
+"href=\"#replication\">kopya etme bölümünü</a> ziyaret edin."
#: server_status.php:979
msgid "Replication status"
@@ -10954,7 +10951,7 @@ msgstr "Sunucuya parolasız bağlanmaya izin verdiniz."
#: setup/lib/index.lib.php:389
msgid "Key is too short, it should have at least 8 characters."
-msgstr "Anahtar çok kısa, en az 8 karakter olmalıdır"
+msgstr "Anahtar çok kısa, en az 8 karakter olmalıdır."
#: setup/lib/index.lib.php:396
msgid "Key should contain letters, numbers [em]and[/em] special characters."
@@ -11144,7 +11141,7 @@ msgstr "-- Yok --"
#: tbl_gis_visualization.php:151
msgid "Spatial column"
-msgstr "Uzamsal sütun"
+msgstr "Uzaysal sütun"
#: tbl_gis_visualization.php:175
msgid "Redraw"
@@ -12032,6 +12029,8 @@ msgid ""
"The current ratio of free query cache memory to total query cache size is %s"
"%%. It should be above 80%%"
msgstr ""
+"Boş sorgu önbellek belleğinin, toplam sorgu önbelleği boyutuna şu anki oranı "
+"%%%s. Bu %%80'in üzerinde olmalıdır"
#: po/advisory_rules.php:85
msgid "Query cache fragmentation"
@@ -12039,7 +12038,7 @@ msgstr "Sorgu önbelleği parçalama"
#: po/advisory_rules.php:86
msgid "The query cache is considerably fragmented."
-msgstr ""
+msgstr "Sorgu önbelleği oldukça parçalanmış."
#: po/advisory_rules.php:87
msgid ""
@@ -12052,6 +12051,15 @@ msgid ""
"using this formula: (query_cache_size - qcache_free_memory) / "
"qcache_queries_in_cache"
msgstr ""
+"Şiddetli parçalanma Qcache_lowmem_prunes değerini muhtemelen (daha fazla) "
+"arttırır. Buna {query_cache_size} çok küçük olmasından dolayı çoğu düşük "
+"Sorgu önbellek belleği azalması sebep oluyor olabilir. Hemen ama kısa süreli "
+"onarım için sorgu önbelleğini (uzun bir süreliğine sorgu önbelleğini "
+"kilitleyebilir) temizleyebilirsiniz. {query_cache_min_res_unit}değerini daha "
+"düşük bir değere dikkatlice ayarlamak da yardımcı olabilir, örn. "
+"önbellekteki sorgularınızın ortalama boyutunu bu formülü kullanarak "
+"ayarlayabilirsiniz: (query_cache_size - qcache_free_memory) / "
+"qcache_queries_in_cache"
#: po/advisory_rules.php:88
#, php-format
@@ -12060,10 +12068,13 @@ msgid ""
"that the query cache is an alternating pattern of free and used blocks. This "
"value should be below 20%%."
msgstr ""
+"Önbellek şu an %%%s olarak parçalanmış, %%100 parçalanma, sorgu önbelleğinin "
+"boş ve kullanılan bloklarının alternatif bir kalıp olduğu anlamına gelir. "
+"Bu değer %%20'nin altında olmalıdır."
#: po/advisory_rules.php:90
msgid "Query cache low memory prunes"
-msgstr ""
+msgstr "Düşük sorgu önbellek belleği azalması"
#: po/advisory_rules.php:91
msgid ""
@@ -12079,12 +12090,16 @@ msgid ""
"overhead of maintaining the cache is likely to increase with its size, so do "
"this in small increments and monitor the results."
msgstr ""
+"Ancak aklınızdan çıkarmayın, önbellek koruması ek yükü muhtemelen boyutunu "
+"arttırır bu yüzden bunu küçük artışlarla yapın ve sonuçlarını izleyin."
#: po/advisory_rules.php:93
msgid ""
"The ratio of removed queries to inserted queries is %s%%. The lower this "
"value is, the better (This rules firing limit: 0.1%)"
msgstr ""
+"Kaldırılan sorguların eklenen sorgulara oranı %%%s. En düşük bu değer en "
+"iyisidir (Bu kuralları atan sınır: %0.1)"
#: po/advisory_rules.php:95
msgid "Query cache max size"
@@ -12095,12 +12110,14 @@ msgid ""
"The query cache size is above 128 MiB. Big query caches may cause "
"significant overhead that is required to maintain the cache."
msgstr ""
+"Sorgu önbelleği boyutu 128 MiB'ın üzerinde. Büyük sorgu önbellekleri, "
+"önbelleği korumak için gereken önemli ölçüde ek yüke sebep olabilir."
#: po/advisory_rules.php:97
msgid ""
"Depending on your environment, it might be performance increasing to reduce "
"this value."
-msgstr ""
+msgstr "Ortamınıza bağlıdır, bu değeri düşürmek performansı arttırabilir."
#: po/advisory_rules.php:98
#, php-format
@@ -12115,6 +12132,7 @@ msgstr "Sorgu önbelleği en az sonuç boyutu"
msgid ""
"The max size of the result set in the query cache is the default of 1 MiB."
msgstr ""
+"Sorgu önbelleğinde sonuç grubunun en fazla boyutu varsayılanı 1 MiB'tır."
#: po/advisory_rules.php:102
msgid ""
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15615-g07f3f59
by Piotr Przybylski 17 Aug '11
by Piotr Przybylski 17 Aug '11
17 Aug '11
The branch, master has been updated
via 07f3f59e22ad0c67eb24f91c58a88898e771fb04 (commit)
via e10ee28831df6423d70ccd84d2fa28d18164d3c2 (commit)
from 746f3566bb1f520c2a3698686bb1d9bb74a928a9 (commit)
- Log -----------------------------------------------------------------
commit 07f3f59e22ad0c67eb24f91c58a88898e771fb04
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 22:41:54 2011 +0200
In CSS '0' is the same as '0px'
commit e10ee28831df6423d70ccd84d2fa28d18164d3c2
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 22:38:22 2011 +0200
Better layout for wrapped database names in nav frame
-----------------------------------------------------------------------
Summary of changes:
themes/original/css/theme_left.css.php | 6 +-
themes/original/css/theme_right.css.php | 22 +++++-----
themes/pmahomme/css/theme_left.css.php | 22 ++++++---
themes/pmahomme/css/theme_right.css.php | 72 +++++++++++++++---------------
4 files changed, 64 insertions(+), 58 deletions(-)
diff --git a/themes/original/css/theme_left.css.php b/themes/original/css/theme_left.css.php
index 5cd64b0..fc13337 100644
--- a/themes/original/css/theme_left.css.php
+++ b/themes/original/css/theme_left.css.php
@@ -271,7 +271,7 @@ div#left_tableList ul ul {
#fast_filter {
width: 100%;
- padding:2px 0px;
- margin:0;
- border:0;
+ padding: 2px 0;
+ margin: 0;
+ border: 0;
}
diff --git a/themes/original/css/theme_right.css.php b/themes/original/css/theme_right.css.php
index 3a7eeb5..6ab3b1f 100644
--- a/themes/original/css/theme_right.css.php
+++ b/themes/original/css/theme_right.css.php
@@ -1196,7 +1196,7 @@ div.liveChart {
}
#addChartDialog input[type="text"] {
- margin:0px;
+ margin: 0;
padding:3px;
}
@@ -1592,7 +1592,7 @@ div.upload_progress_bar_outer
div.upload_progress_bar_inner
{
background-color: <?php echo $GLOBALS['cfg']['NaviBackground']; ?>;
- width: 0px;
+ width: 0;
height: 12px;
margin: 1px;
}
@@ -1613,7 +1613,7 @@ table#serverconnection_trg_local {
* Ajax notification styling
*/
.ajax_notification {
- top: 0px; /** The notification needs to be shown on the top of the page */
+ top: 0; /** The notification needs to be shown on the top of the page */
position: fixed;
margin-top: 0;
margin-right: auto;
@@ -1684,13 +1684,13 @@ table#serverconnection_trg_local {
}
.format_specific_options h3 {
- margin: 10px 0px 0px 10px;
- border: 0px;
+ margin: 10px 0 0 10px;
+ border: 0;
}
.format_specific_options {
border: 1px solid #999999;
- margin: 7px 0px;
+ margin: 7px 0;
padding: 3px;
}
@@ -1706,7 +1706,7 @@ select#db_select, select#table_select {
}
.export_sub_options {
- margin: 20px 0px 0px 30px;
+ margin: 20px 0 0 30px;
}
.export_sub_options h4 {
@@ -1730,7 +1730,7 @@ select#db_select, select#table_select {
*/
.importoptions #import_notification {
- margin: 10px 0px;
+ margin: 10px 0;
font-style: italic;
}
@@ -1739,7 +1739,7 @@ input#input_import_file {
}
.formelementrow {
- margin: 5px 0px 5px 0px;
+ margin: 5px 0 5px 0;
}
/**
@@ -1824,12 +1824,12 @@ a.close_enum_editor {
}
#enum_editor #values, #enum_editor_no_js #values {
- margin: 15px 0px;
+ margin: 15px 0;
width: 100%;
}
#enum_editor #values input, #enum_editor_no_js #values input {
- margin: 5px 0px;
+ margin: 5px 0;
float: top;
width: 100%;
}
diff --git a/themes/pmahomme/css/theme_left.css.php b/themes/pmahomme/css/theme_left.css.php
index 8ed6707..e6b586c 100644
--- a/themes/pmahomme/css/theme_left.css.php
+++ b/themes/pmahomme/css/theme_left.css.php
@@ -142,9 +142,10 @@ ul#databaseList span {
ul#databaseList a {
color: #333;
- background: url(./themes/pmahomme/img/database.png) no-repeat 0% 50% transparent;
+ background: url(./themes/pmahomme/img/database.png) no-repeat 0 5px transparent;
display: block;
- padding: 5px;
+ text-indent: 0;
+ padding: 5px 5px 5px 25px;
font-style: normal;
}
@@ -160,14 +161,19 @@ div#navidbpageselector select{
}
ul#databaseList ul {
- margin:0px;
- padding:0px;
+ margin: 0;
+ padding: 0;
+}
+
+ul#databaseList li {
+ list-style: none;
+ text-indent: 20px;
+ margin: 0;
+ padding: 0;
}
-ul#databaseList li{ list-style:none;text-indent:20px; margin:0px;
- padding:0px;}
ul#databaseList a:hover {
- background:url(./themes/pmahomme/img/database.png) no-repeat 0% 50% #e4e4e4;
+ background-color: #e4e4e4;
}
ul#databaseList li.selected a {
@@ -184,7 +190,7 @@ div#reloadlink a img,
div#leftframelinks a img.icon {
margin: 0.3em;
margin-top: 0.7em;
- border: 0px;
+ border: 0;
}
div#leftframelinks a:hover img {
diff --git a/themes/pmahomme/css/theme_right.css.php b/themes/pmahomme/css/theme_right.css.php
index 6da96cf..589fa54 100644
--- a/themes/pmahomme/css/theme_right.css.php
+++ b/themes/pmahomme/css/theme_right.css.php
@@ -60,7 +60,7 @@ h1 {
h2 {
font-size: 2em;
font-weight: normal;
- text-shadow: 0px 1px 0px #fff;
+ text-shadow: 0 1px 0 #fff;
padding: 10px 0 10px 3px;
color: #777;
}
@@ -204,7 +204,7 @@ input[type=submit]{
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
- text-shadow: 0px 1px 0px #fff;
+ text-shadow: 0 1px 0 #fff;
background-image: url(./themes/svg_gradient.php?from=ffffff&to=cccccc);
background-size: 100% 100%;
@@ -966,11 +966,11 @@ form.login label {
/* topmenu */
#topmenu a {
- text-shadow:0px 1px 0px #fff;
+ text-shadow: 0 1px 0 #fff;
}
#topmenu .error {
- background:#eee;border:0px !important;color:#aaa;
+ background:#eee;border: 0 !important;color:#aaa;
}
ul#topmenu, ul#topmenu2, ul.tabs {
@@ -1010,8 +1010,8 @@ ul#topmenu li, ul#topmenu2 li {
ul#topmenu a, ul#topmenu span {
display: block;
- margin: 0px;
- padding: 0px;
+ margin: 0;
+ padding: 0;
white-space: nowrap;
}
@@ -1056,7 +1056,7 @@ ul#topmenu ul li {
ul#topmenu2 a {
display: block;
- margin: 7px 6px 7px 0px;
+ margin: 7px 6px 7px 0;
padding: 4px 10px;
white-space: nowrap;
border:1px solid #ddd;
@@ -1150,7 +1150,7 @@ ul#topmenu2 a.tabactive {
/* to be able to cancel the bottom border, use <li class="active"> */
ul#topmenu > li.active {
/* border-bottom: 0pt solid <?php echo $GLOBALS['cfg']['MainBackground']; ?>; */
- border-right:0px;
+ border-right: 0;
}
/* disabled tabs */
@@ -1412,8 +1412,8 @@ div.liveChart {
}
#addChartDialog input[type="text"] {
- margin:0px;
- padding:3px;
+ margin: 0;
+ padding: 3px;
}
div#chartVariableSettings {
@@ -1517,7 +1517,7 @@ table#serverVariables td {
p.notice {
- margin: 1.5em 0px;
+ margin: 1.5em 0;
border: 1px solid #000;
<?php if ($GLOBALS['cfg']['ErrorIconic']) { ?>
background-repeat: no-repeat;
@@ -1534,9 +1534,9 @@ p.notice {
-moz-border-radius:5px;
-webkit-border-radius:5px;
border-radius:5px;
- -moz-box-shadow: 0px 1px 2px #fff inset;
- -webkit-box-shadow: 0px 1px 2px #fff inset;
- box-shadow:0px 1px 2px #fff; inset;
+ -moz-box-shadow: 0 1px 2px #fff inset;
+ -webkit-box-shadow: 0 1px 2px #fff inset;
+ box-shadow: 0 1px 2px #fff; inset;
background:#555;
color:#d4fb6a;
}
@@ -1604,14 +1604,14 @@ div#profilingchart {
border-radius:5px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
- box-shadow:0px 1px 1px #fff inset;
- -webkit-box-shadow:0px 1px 1px #fff inset;
- -moz-box-shadow:0px 1px 1px #fff inset;
+ box-shadow: 0 1px 1px #fff inset;
+ -webkit-box-shadow: 0 1px 1px #fff inset;
+ -moz-box-shadow: 0 1px 1px #fff inset;
}
#sectionlinks a, .buttonlinks a, a.button {
font-size:0.88em;
font-weight:bold;
- text-shadow: 0px 1px 0px #fff;
+ text-shadow: 0 1px 0 #fff;
line-height:35px;
margin-left:7px;
border: 1px solid #aaa;
@@ -1627,7 +1627,7 @@ div#profilingchart {
/*
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
- text-shadow: #fff 0px 1px 0px;
+ text-shadow: #fff 0 1px 0;
*/
background-image: url(./themes/svg_gradient.php?from=ffffff&to=cccccc);
background-size: 100% 100%;
@@ -1954,7 +1954,7 @@ div.upload_progress_bar_outer
div.upload_progress_bar_inner
{
background-color: <?php echo $GLOBALS['cfg']['NaviBackground']; ?>;
- width: 0px;
+ width: 0;
height: 12px;
margin: 1px;
}
@@ -1977,7 +1977,7 @@ input[type=text].invalid_value,
* Ajax notification styling
*/
.ajax_notification {
- top: 0px; /** The notification needs to be shown on the top of the page */
+ top: 0; /** The notification needs to be shown on the top of the page */
position: fixed;
margin-top: 0;
margin-right: auto;
@@ -2003,9 +2003,9 @@ input[type=text].invalid_value,
border-radius:5px;
-moz-border-radius:5px;
-webkit-border-radius:5px;
- box-shadow: 0px 5px 90px #888;
- -moz-box-shadow: 0px 5px 90px #888;
- -webkit-box-shadow: 0px 5px 90px #888;
+ box-shadow: 0 5px 90px #888;
+ -moz-box-shadow: 0 5px 90px #888;
+ -webkit-box-shadow: 0 5px 90px #888;
}
#loading_parent {
@@ -2057,7 +2057,7 @@ input[type=text].invalid_value,
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
- text-shadow: 0px 1px 0px #fff;
+ text-shadow: 0 1px 0 #fff;
background-image: url(./themes/svg_gradient.php?from=ffffff&to=cccccc);
background-size: 100% 100%;
@@ -2077,13 +2077,13 @@ input[type=text].invalid_value,
}
.format_specific_options h3 {
- margin: 10px 0px 0px 10px;
- border: 0px;
+ margin: 10px 0 0 10px;
+ border: 0;
}
.format_specific_options {
border: 1px solid #999999;
- margin: 7px 0px;
+ margin: 7px 0;
padding: 3px;
}
@@ -2099,7 +2099,7 @@ select#db_select, select#table_select {
}
.export_sub_options {
- margin: 20px 0px 0px 30px;
+ margin: 20px 0 0 30px;
}
.export_sub_options h4 {
@@ -2123,7 +2123,7 @@ select#db_select, select#table_select {
*/
.importoptions #import_notification {
- margin: 10px 0px;
+ margin: 10px 0;
font-style: italic;
}
@@ -2132,7 +2132,7 @@ input#input_import_file {
}
.formelementrow {
- margin: 5px 0px 5px 0px;
+ margin: 5px 0 5px 0;
}
/**
@@ -2217,12 +2217,12 @@ a.close_enum_editor {
}
#enum_editor #values, #enum_editor_no_js #values {
- margin: 15px 0px;
+ margin: 15px 0;
width: 100%;
}
#enum_editor #values input, #enum_editor_no_js #values input {
- margin: 5px 0px;
+ margin: 5px 0;
float: top;
width: 100%;
}
@@ -2244,7 +2244,7 @@ a.close_enum_editor {
background:#fff;
line-height:24px;
border:1px solid #aaa;
- -moz-box-shadow:0px 3px 3px #ddd;
+ -moz-box-shadow: 0 3px 3px #ddd;
}
.structure_actions_dropdown span{display:block;}
.structure_actions_dropdown span:hover{background:#ddd;}
@@ -2319,7 +2319,7 @@ iframe.IE_hack {
margin: 0;
padding: 0.5em;
background: #fff;
- border-top:0px;
+ border-top: 0;
}
.config-form fieldset .errors { /* form error list */
@@ -2552,7 +2552,7 @@ fieldset .disabled-field td {
.toggleButton .toggleOn {
color: white;
padding: 0 1em;
- text-shadow: 0px 0px 0.2em #000;
+ text-shadow: 0 0 0.2em #000;
}
.toggleButton .toggleOff {
padding: 0 1em;
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15613-g746f356
by Piotr Przybylski 17 Aug '11
by Piotr Przybylski 17 Aug '11
17 Aug '11
The branch, master has been updated
via 746f3566bb1f520c2a3698686bb1d9bb74a928a9 (commit)
from 683a512c41a5474cb60f0e22cea4326aa359bb7a (commit)
- Log -----------------------------------------------------------------
commit 746f3566bb1f520c2a3698686bb1d9bb74a928a9
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 22:22:39 2011 +0200
set_time_limit may fail, make it do so silently
-----------------------------------------------------------------------
Summary of changes:
libraries/import/shp.php | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libraries/import/shp.php b/libraries/import/shp.php
index b674f59..72ff7a7 100644
--- a/libraries/import/shp.php
+++ b/libraries/import/shp.php
@@ -19,9 +19,9 @@ if (isset($plugin_list)) {
} else {
if ((int) ini_get('memory_limit') < 512) {
- ini_set('memory_limit', '512M');
+ @ini_set('memory_limit', '512M');
}
- set_time_limit(300);
+ @set_time_limit(300);
// Append the bfShapeFiles directory to the include path variable
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15612-g683a512
by Madhura Jayaratne 17 Aug '11
by Madhura Jayaratne 17 Aug '11
17 Aug '11
The branch, master has been updated
via 683a512c41a5474cb60f0e22cea4326aa359bb7a (commit)
via 5f2a52153bd3f6b5f96e813180ec0a8875b0aa5e (commit)
via 18f567a3f13ab78015521e46e3fa2b9873d44610 (commit)
via 1a1833662fa4128c5d399e9813b1635ce88b21f7 (commit)
via d67165f7bcc7abe654d98085b7c44f48c5e451ba (commit)
from c5cbe212772a8ccebe7acf7c86bad3ba3a805b11 (commit)
- Log -----------------------------------------------------------------
commit 683a512c41a5474cb60f0e22cea4326aa359bb7a
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 18 00:04:40 2011 +0530
Wrap long lines.
commit 5f2a52153bd3f6b5f96e813180ec0a8875b0aa5e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 23:54:14 2011 +0530
Use include_once when included conditionally
commit 18f567a3f13ab78015521e46e3fa2b9873d44610
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 23:52:36 2011 +0530
Correcting indentation for switch statements
commit 1a1833662fa4128c5d399e9813b1635ce88b21f7
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 23:48:19 2011 +0530
Wrap long lines
commit d67165f7bcc7abe654d98085b7c44f48c5e451ba
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 23:42:43 2011 +0530
Fix code style
-----------------------------------------------------------------------
Summary of changes:
gis_data_editor.php | 10 ++--
libraries/import/shp.php | 170 ++++++++++++++++++++++++++--------------------
2 files changed, 101 insertions(+), 79 deletions(-)
diff --git a/gis_data_editor.php b/gis_data_editor.php
index 7614aba..23ce037 100644
--- a/gis_data_editor.php
+++ b/gis_data_editor.php
@@ -33,7 +33,7 @@ if (! isset($gis_data['gis_type'])) {
$start = (substr($_REQUEST['value'], 0, 1) == "'") ? 1 : 0;
$gis_data['gis_type'] = substr($_REQUEST['value'], $start, strpos($_REQUEST['value'], "(") - $start);
}
- if((! isset($gis_data['gis_type'])) || (! in_array($gis_data['gis_type'], $gis_types))) {
+ if ((! isset($gis_data['gis_type'])) || (! in_array($gis_data['gis_type'], $gis_types))) {
$gis_data['gis_type'] = $gis_types[0];
}
}
@@ -59,7 +59,7 @@ $visualization = PMA_GIS_visualizationResults($data, $visualizationSettings, $fo
$open_layers = PMA_GIS_visualizationResults($data, $visualizationSettings, 'ol');
// If the call is to update the WKT and visualization make an AJAX response
-if(isset($_REQUEST['generate']) && $_REQUEST['generate'] == true) {
+if (isset($_REQUEST['generate']) && $_REQUEST['generate'] == true) {
$extra_data = array(
'result' => $result,
'visualization' => $visualization,
@@ -69,7 +69,7 @@ if(isset($_REQUEST['generate']) && $_REQUEST['generate'] == true) {
}
// If the call is to get the whole content, start buffering, skipping </head> and <body> tags
-if(isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
+if (isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
ob_start();
} else {
?>
@@ -319,9 +319,9 @@ if(isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
<?php
// If the call is to get the whole content, get the content in the buffer and make and AJAX response.
-if(isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
+if (isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
$extra_data['gis_editor'] = ob_get_contents();
- PMA_ajaxResponse(NULL, ob_end_clean(), $extra_data);
+ PMA_ajaxResponse(null, ob_end_clean(), $extra_data);
}
?>
</body>
diff --git a/libraries/import/shp.php b/libraries/import/shp.php
index 7ee62fd..b674f59 100644
--- a/libraries/import/shp.php
+++ b/libraries/import/shp.php
@@ -26,7 +26,7 @@ if (isset($plugin_list)) {
// Append the bfShapeFiles directory to the include path variable
set_include_path(get_include_path() . PATH_SEPARATOR . getcwd() . '/libraries/bfShapeFiles/');
- require_once './libraries/bfShapeFiles/ShapeFile.lib.php';
+ include_once './libraries/bfShapeFiles/ShapeFile.lib.php';
$GLOBALS['finished'] = false;
$buffer = '';
@@ -51,10 +51,12 @@ if (isset($plugin_list)) {
}
/**
- * This class extends ShapeFile class to cater following phpMyAdmin specific requirements.
+ * This class extends ShapeFile class to cater the following phpMyAdmin
+ * specific requirements.
* 1) To load data from .dbf file only when the dBase extension is available.
- * 2) To use PMA_importGetNextChunk() functionality to read data, rather than reading directly from a file.
- * Using readFromBuffer() in place of fread(). This makes it possible to use compressions.
+ * 2) To use PMA_importGetNextChunk() functionality to read data, rather than
+ * reading directly from a file. Using readFromBuffer() in place of fread().
+ * This makes it possible to use compressions.
*/
class PMA_ShapeFile extends ShapeFile {
@@ -111,37 +113,39 @@ if (isset($plugin_list)) {
}
/**
- * This class extends ShapeRecord class to cater following phpMyAdmin specific requirements.
+ * This class extends ShapeRecord class to cater the following phpMyAdmin
+ * specific requirements.
* 1) To load data from .dbf file only when the dBase extension is available.
- * 2) To use PMA_importGetNextChunk() functionality to read data, rather than reading directly from a file.
- * Using readFromBuffer() in place of fread(). This makes it possible to use compressions.
+ * 2) To use PMA_importGetNextChunk() functionality to read data, rather than
+ * reading directly from a file. Using readFromBuffer() in place of fread().
+ * This makes it possible to use compressions.
*/
- class PMA_ShapeRecord extends ShapeRecord {
-
+ class PMA_ShapeRecord extends ShapeRecord
+ {
function loadFromFile(&$SHPFile, &$DBFFile)
{
$this->DBFFile = $DBFFile;
$this->_loadHeaders();
switch ($this->shapeType) {
- case 0:
- $this->_loadNullRecord();
- break;
- case 1:
- $this->_loadPointRecord();
- break;
- case 3:
- $this->_loadPolyLineRecord();
- break;
- case 5:
- $this->_loadPolygonRecord();
- break;
- case 8:
- $this->_loadMultiPointRecord();
- break;
- default:
- $this->setError(sprintf("The Shape Type '%s' is not supported.", $this->shapeType));
- break;
+ case 0:
+ $this->_loadNullRecord();
+ break;
+ case 1:
+ $this->_loadPointRecord();
+ break;
+ case 3:
+ $this->_loadPolyLineRecord();
+ break;
+ case 5:
+ $this->_loadPolygonRecord();
+ break;
+ case 8:
+ $this->_loadMultiPointRecord();
+ break;
+ default:
+ $this->setError(sprintf("The Shape Type '%s' is not supported.", $this->shapeType));
+ break;
}
if (extension_loaded('dbase') && isset($this->DBFFile)) {
$this->_loadDBFData();
@@ -151,7 +155,8 @@ if (isset($plugin_list)) {
function _loadHeaders()
{
$this->recordNumber = loadData("N", readFromBuffer(4));
- $tmp = loadData("N", readFromBuffer(4)); //We read the length of the record
+ //We read the length of the record
+ $tmp = loadData("N", readFromBuffer(4));
$this->shapeType = loadData("V", readFromBuffer(4));
}
@@ -198,11 +203,15 @@ if (isset($plugin_list)) {
$readPoints = 0;
reset($this->SHPData["parts"]);
while (list($partIndex, $partData) = each($this->SHPData["parts"])) {
- if (!isset($this->SHPData["parts"][$partIndex]["points"]) || !is_array($this->SHPData["parts"][$partIndex]["points"])) {
+ if (! isset($this->SHPData["parts"][$partIndex]["points"])
+ || !is_array($this->SHPData["parts"][$partIndex]["points"])
+ ) {
$this->SHPData["parts"][$partIndex] = array();
$this->SHPData["parts"][$partIndex]["points"] = array();
}
- while (!in_array($readPoints, $this->SHPData["parts"]) && ($readPoints < ($this->SHPData["numpoints"]))) {
+ while (! in_array($readPoints, $this->SHPData["parts"])
+ && ($readPoints < ($this->SHPData["numpoints"]))
+ ) {
$this->SHPData["parts"][$partIndex]["points"][] = $this->_loadPoint();
$readPoints++;
}
@@ -211,7 +220,8 @@ if (isset($plugin_list)) {
}
$shp = new PMA_ShapeFile(1);
- // If the zip archive has more than one file, get the correct content to the buffer from .shp file.
+ // If the zip archive has more than one file,
+ // get the correct content to the buffer from .shp file.
if ($compression == 'application/zip' && PMA_getNoOfFilesInZip($import_file) > 1) {
$zip_content = PMA_getZipContents($import_file, '/^.*\.shp$/i');
$GLOBALS['import_text'] = $zip_content['data'];
@@ -220,7 +230,8 @@ if (isset($plugin_list)) {
$temp_dbf_file = false;
// We need dbase extension to handle .dbf file
if (extension_loaded('dbase')) {
- // If we can extract the zip archive to 'TempDir' and use the files in it for import
+ // If we can extract the zip archive to 'TempDir'
+ // and use the files in it for import
if ($compression == 'application/zip'
&& ! empty($cfg['TempDir'])
&& is_writable($cfg['TempDir'])
@@ -229,9 +240,14 @@ if (isset($plugin_list)) {
// If the corresponding .dbf file is in the zip archive
if ($dbf_file_name) {
// Extract the .dbf file and point to it.
- $extracted = PMA_zipExtract($import_file, realpath($cfg['TempDir']), array($dbf_file_name));
+ $extracted = PMA_zipExtract(
+ $import_file,
+ realpath($cfg['TempDir']),
+ array($dbf_file_name)
+ );
if ($extracted) {
- $dbf_file_path = realpath($cfg['TempDir']) . (PMA_IS_WINDOWS ? '\\' : '/') . $dbf_file_name;
+ $dbf_file_path = realpath($cfg['TempDir'])
+ . (PMA_IS_WINDOWS ? '\\' : '/') . $dbf_file_name;
$temp_dbf_file = true;
// Replace the .dbf with .*, as required by the bsShapeFiles library.
$file_name = substr($dbf_file_path, 0, strlen($dbf_file_path) - 4) . '.*';
@@ -239,9 +255,14 @@ if (isset($plugin_list)) {
}
}
}
- // If file is in UploadDir, use .dbf file in the same UploadDir to load extra data.
- elseif (! empty($local_import_file) && ! empty($cfg['UploadDir']) && $compression == 'none') {
- // Replace the .shp with .*, so the bsShapeFiles library correctly locates .dbf file.
+ // If file is in UploadDir, use .dbf file in the same UploadDir
+ // to load extra data.
+ elseif (! empty($local_import_file)
+ && ! empty($cfg['UploadDir'])
+ && $compression == 'none'
+ ) {
+ // Replace the .shp with .*,
+ // so the bsShapeFiles library correctly locates .dbf file.
$file_name = substr($import_file, 0, strlen($import_file) - 4) . '.*';
$shp->FileName = $file_name;
}
@@ -278,41 +299,41 @@ if (isset($plugin_list)) {
31 => 'MultiPatch',
);
- require_once './libraries/gis/pma_gis_geometry.php';
+ include_once './libraries/gis/pma_gis_geometry.php';
switch ($shp->shapeType) {
- // ESRI Null Shape
- case 0:
- $gis_obj = null;
- break;
- // ESRI Point
- case 1:
- require_once './libraries/gis/pma_gis_point.php';
- $gis_obj = PMA_GIS_Point::singleton();
- break;
- // ESRI PolyLine
- case 3:
- require_once './libraries/gis/pma_gis_multilinestring.php';
- $gis_obj = PMA_GIS_Multilinestring::singleton();
- break;
- // ESRI Polygon
- case 5:
- require_once './libraries/gis/pma_gis_multipolygon.php';
- $gis_obj = PMA_GIS_Multipolygon::singleton();
- break;
- // ESRI MultiPoint
- case 8:
- require_once './libraries/gis/pma_gis_multipoint.php';
- $gis_obj = PMA_GIS_Multipoint::singleton();
- break;
- default:
- $error = true;
- if (! isset($esri_types[$shp->shapeType])) {
- $message = PMA_Message::error(__('You tried to import an invalid file or the imported file contains invalid data'));
- } else {
- $message = PMA_Message::error(__('MySQL Spatial Extension does not support ESRI type "%s".'));
- $message->addParam($param);
- }
- return;
+ // ESRI Null Shape
+ case 0:
+ $gis_obj = null;
+ break;
+ // ESRI Point
+ case 1:
+ include_once './libraries/gis/pma_gis_point.php';
+ $gis_obj = PMA_GIS_Point::singleton();
+ break;
+ // ESRI PolyLine
+ case 3:
+ include_once './libraries/gis/pma_gis_multilinestring.php';
+ $gis_obj = PMA_GIS_Multilinestring::singleton();
+ break;
+ // ESRI Polygon
+ case 5:
+ include_once './libraries/gis/pma_gis_multipolygon.php';
+ $gis_obj = PMA_GIS_Multipolygon::singleton();
+ break;
+ // ESRI MultiPoint
+ case 8:
+ include_once './libraries/gis/pma_gis_multipoint.php';
+ $gis_obj = PMA_GIS_Multipoint::singleton();
+ break;
+ default:
+ $error = true;
+ if (! isset($esri_types[$shp->shapeType])) {
+ $message = PMA_Message::error(__('You tried to import an invalid file or the imported file contains invalid data'));
+ } else {
+ $message = PMA_Message::error(__('MySQL Spatial Extension does not support ESRI type "%s".'));
+ $message->addParam($param);
+ }
+ return;
}
$num_rows = count($shp->records);
@@ -322,7 +343,7 @@ if (isset($plugin_list)) {
$rows = array();
$col_names = array();
if ($num_rows != 0) {
- foreach($shp->records as $record){
+ foreach ($shp->records as $record) {
$tempRow = array();
if ($gis_obj == null) {
$tempRow[] = null;
@@ -345,13 +366,14 @@ if (isset($plugin_list)) {
}
}
- if(count($rows) == 0) {
+ if (count($rows) == 0) {
$error = true;
$message = PMA_Message::error(__('The imported file does not contain any data'));
return;
}
- // Column names for spatial column and the rest of the columns, if they are available
+ // Column names for spatial column and the rest of the columns,
+ // if they are available
$col_names[] = 'SPATIAL';
for ($n = 0; $n < $num_data_cols; $n++) {
$col_names[] = $shp->DBFHeader[$n][0];
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15605-g2fdfc4f
by Piotr Przybylski 17 Aug '11
by Piotr Przybylski 17 Aug '11
17 Aug '11
The branch, master has been updated
via 2fdfc4fc1e19971767368061694a76499ca97463 (commit)
via 18c65bbbba63d6f504d9589d7fc99f22312c97fd (commit)
from 69672d854d4264330b3b331f725531c9e406c90e (commit)
- Log -----------------------------------------------------------------
commit 2fdfc4fc1e19971767368061694a76499ca97463
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 18:25:56 2011 +0200
"position: relative" on tables was required for grid, add it dynamically in PMA_makegrid
commit 18c65bbbba63d6f504d9589d7fc99f22312c97fd
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 18:04:22 2011 +0200
relative position doesn't work correctly on <table> elements
in this case it broke position of "More" menus
-----------------------------------------------------------------------
Summary of changes:
js/makegrid.js | 3 +++
themes/original/css/theme_right.css.php | 4 ----
themes/pmahomme/css/theme_right.css.php | 1 -
3 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/js/makegrid.js b/js/makegrid.js
index 1a51eb9..aabe9b5 100644
--- a/js/makegrid.js
+++ b/js/makegrid.js
@@ -1614,6 +1614,9 @@ function PMA_makegrid(t, enableResize, enableReorder, enableVisib, enableGridEdi
* Initialize grid
******************/
+ // add relative position to table so that resize handlers are correctly positioned
+ $(t).css('position', 'relative');
+
// wrap all data cells, except actions cell, with span
$(t).find('th, td:not(:has(span))')
.wrapInner('<span />');
diff --git a/themes/original/css/theme_right.css.php b/themes/original/css/theme_right.css.php
index b8ac623..3a7eeb5 100644
--- a/themes/original/css/theme_right.css.php
+++ b/themes/original/css/theme_right.css.php
@@ -2410,10 +2410,6 @@ span.cm-number {
padding: 1px 3px !important;
}
-.data {
- position: relative;
-}
-
.cHide {
background: #D3DCE3 url(<?php echo $_SESSION['PMA_Theme']->getImgPath(); ?>col_hide.png);
color: #CCC;
diff --git a/themes/pmahomme/css/theme_right.css.php b/themes/pmahomme/css/theme_right.css.php
index ee2edea..6da96cf 100644
--- a/themes/pmahomme/css/theme_right.css.php
+++ b/themes/pmahomme/css/theme_right.css.php
@@ -72,7 +72,6 @@ h2 a img{display:inline;}
.data{
margin: 0 0 12px 0;
- position: relative;
}
h3 {
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15603-g69672d8
by Piotr Przybylski 17 Aug '11
by Piotr Przybylski 17 Aug '11
17 Aug '11
The branch, master has been updated
via 69672d854d4264330b3b331f725531c9e406c90e (commit)
from 5c561d1df3bcfae55367285bc6fe169e8a0efa62 (commit)
- Log -----------------------------------------------------------------
commit 69672d854d4264330b3b331f725531c9e406c90e
Author: Piotr Przybylski <piotrprz(a)gmail.com>
Date: Wed Aug 17 17:51:21 2011 +0200
Fix More icon position
-----------------------------------------------------------------------
Summary of changes:
themes/original/css/theme_right.css.php | 3 +++
themes/pmahomme/css/theme_right.css.php | 2 ++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/themes/original/css/theme_right.css.php b/themes/original/css/theme_right.css.php
index 6cb4233..b8ac623 100644
--- a/themes/original/css/theme_right.css.php
+++ b/themes/original/css/theme_right.css.php
@@ -284,6 +284,9 @@ th.headerSortUp img.sortableIcon { background-position: 0 -1445px; width: 11px;
/* Same as s_desc */
th.headerSortDown img.sortableIcon { background-position: 0 -1528px; width: 11px; height: 9px; }
+/* Fix position */
+.ic_more { vertical-align: middle; }
+
/******************************************************************************/
/* classes */
.clearfloat {
diff --git a/themes/pmahomme/css/theme_right.css.php b/themes/pmahomme/css/theme_right.css.php
index 1103bfa..ee2edea 100644
--- a/themes/pmahomme/css/theme_right.css.php
+++ b/themes/pmahomme/css/theme_right.css.php
@@ -468,6 +468,8 @@ th.headerSortUp img.sortableIcon { background-position: -1516px 0; }
/* Same as s_desc */
th.headerSortDown img.sortableIcon { background-position: 0 0; }
+/* Fix position */
+.ic_more { vertical-align: middle; }
/******************************************************************************/
/* classes */
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15602-g5c561d1
by Madhura Jayaratne 17 Aug '11
by Madhura Jayaratne 17 Aug '11
17 Aug '11
The branch, master has been updated
via 5c561d1df3bcfae55367285bc6fe169e8a0efa62 (commit)
via 20ff8f2ee08eede3ad80b2f2bd0cc6019377974f (commit)
from 54037e2038e8fb8d550e1a6ab907e208df12d357 (commit)
- Log -----------------------------------------------------------------
commit 5c561d1df3bcfae55367285bc6fe169e8a0efa62
Merge: 20ff8f2 54037e2
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 20:59:47 2011 +0530
Merge branch 'master' of ssh://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin
commit 20ff8f2ee08eede3ad80b2f2bd0cc6019377974f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 20:45:16 2011 +0530
These types are now supported in PMA
-----------------------------------------------------------------------
Summary of changes:
.../common/PMA_unsupportedDatatypes_test.php | 10 +---------
1 files changed, 1 insertions(+), 9 deletions(-)
diff --git a/test/libraries/common/PMA_unsupportedDatatypes_test.php b/test/libraries/common/PMA_unsupportedDatatypes_test.php
index 686e4ee..57c8c87 100644
--- a/test/libraries/common/PMA_unsupportedDatatypes_test.php
+++ b/test/libraries/common/PMA_unsupportedDatatypes_test.php
@@ -18,15 +18,7 @@ class PMA_unsupportedDatatypes_test extends PHPUnit_Framework_TestCase
function testNotSupportedDataTypes()
{
- $no_support_types = array('geometry',
- 'point',
- 'linestring',
- 'polygon',
- 'multipoint',
- 'multilinestring',
- 'multipolygon',
- 'geometrycollection'
- );
+ $no_support_types = array();
$this->assertEquals($no_support_types, PMA_unsupportedDatatypes());
}
}
\ No newline at end of file
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15599-g5e4f8bf
by Michal Čihař 17 Aug '11
by Michal Čihař 17 Aug '11
17 Aug '11
The branch, master has been updated
via 5e4f8bff546e00d5982cf88955b37a9b1b64feb4 (commit)
via cf8803fd44bdf508ee9c5b032be40ad48aa914bc (commit)
via e3903233f82e348c870d64c1a923872839ffb1c1 (commit)
via bd943b2ed97ccd8411764d3447bb1426e1f0cf1f (commit)
via da57391c98ad82742f2104e327556efc8081fe28 (commit)
via 6463f542cb49626744bce00d1cb70e3dc256798e (commit)
via 33642bb9050e8bfb47c0b7250f386b0a50264ef0 (commit)
via 3f4d65ba1e6dcb955f80b82395c9e4f8243335e5 (commit)
via 13cf3f615e7a23a6f4c4ee6c23e6eba329015dca (commit)
from d1684d6d965cbe2a029644c14871d668470dbad8 (commit)
- Log -----------------------------------------------------------------
commit 5e4f8bff546e00d5982cf88955b37a9b1b64feb4
Merge: d1684d6 cf8803f
Author: Michal Čihař <michal(a)cihar.com>
Date: Wed Aug 17 16:58:20 2011 +0200
Merge remote-tracking branch 'pootle/master'
commit cf8803fd44bdf508ee9c5b032be40ad48aa914bc
Merge: e390323 79b5bd6
Author: Pootle server <pootle(a)cihar.com>
Date: Wed Aug 17 16:40:13 2011 +0200
Merge remote-tracking branch 'origin/master'
commit e3903233f82e348c870d64c1a923872839ffb1c1
Merge: bd943b2 c04a557
Author: Pootle server <pootle(a)cihar.com>
Date: Wed Aug 17 14:40:12 2011 +0200
Merge remote-tracking branch 'origin/master'
commit bd943b2ed97ccd8411764d3447bb1426e1f0cf1f
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:24:55 2011 +0200
Translation update done using Pootle.
commit da57391c98ad82742f2104e327556efc8081fe28
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:23:37 2011 +0200
Translation update done using Pootle.
commit 6463f542cb49626744bce00d1cb70e3dc256798e
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:21:00 2011 +0200
Translation update done using Pootle.
commit 33642bb9050e8bfb47c0b7250f386b0a50264ef0
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:16:58 2011 +0200
Translation update done using Pootle.
commit 3f4d65ba1e6dcb955f80b82395c9e4f8243335e5
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:14:37 2011 +0200
Translation update done using Pootle.
commit 13cf3f615e7a23a6f4c4ee6c23e6eba329015dca
Author: franz.georg <franz.georg(a)neurieser.eu>
Date: Wed Aug 17 13:13:08 2011 +0200
Translation update done using Pootle.
-----------------------------------------------------------------------
Summary of changes:
po/de.po | 19 +++++++++++--------
1 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/po/de.po b/po/de.po
index 2c037fc..d8418ed 100644
--- a/po/de.po
+++ b/po/de.po
@@ -4,8 +4,8 @@ msgstr ""
"Project-Id-Version: phpMyAdmin 3.5.0-dev\n"
"Report-Msgid-Bugs-To: phpmyadmin-devel(a)lists.sourceforge.net\n"
"POT-Creation-Date: 2011-08-16 19:11+0200\n"
-"PO-Revision-Date: 2011-08-13 02:00+0200\n"
-"Last-Translator: Sven Strickroth <email(a)cs-ware.de>\n"
+"PO-Revision-Date: 2011-08-17 13:24+0200\n"
+"Last-Translator: <franz.georg(a)neurieser.eu>\n"
"Language-Team: german <de(a)li.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
@@ -415,10 +415,10 @@ msgid "You have to choose at least one column to display"
msgstr "Bitte wählen Sie mindestens eine anzuzeigende Spalte"
#: db_qbe.php:186
-#, fuzzy, php-format
+#, php-format
#| msgid "visual builder"
msgid "Switch to %svisual builder%s"
-msgstr "Wechseln zu %svisual builder%s"
+msgstr "Zu %svisual builder%s wechseln"
#: db_qbe.php:222 libraries/db_structure.lib.php:90
#: libraries/display_tbl.lib.php:955
@@ -1132,10 +1132,9 @@ msgid "Query statistics"
msgstr "Abfrage-Statistiken"
#: js/messages.php:93
-#, fuzzy
#| msgid "Local monitor configuration icompatible"
msgid "Local monitor configuration incompatible"
-msgstr "Lokale Monitor-Konfiguration ist inkompatibel"
+msgstr "Die lokale Bildschirmkonfiguration ist nicht kompatibel."
#: js/messages.php:94
msgid ""
@@ -1694,7 +1693,7 @@ msgstr "Suche"
#: js/messages.php:264
msgid "Each point represents a data row."
-msgstr ""
+msgstr "Jeder Punkt stellt eine Datenreihe dar"
#: js/messages.php:266
msgid "Hovering over a point will show its label."
@@ -1711,10 +1710,14 @@ msgstr ""
#: js/messages.php:272
msgid "Click a data point to view and possibly edit the data row."
msgstr ""
+"Auf einen Datenpunkt klicken, um eine Datenzeile anzuzeigen bzw. zu "
+"editieren."
#: js/messages.php:274
msgid "The plot can be resized by dragging it along the bottom right corner."
msgstr ""
+"Die Größe der Darstellung kann durch Ziehen in die rechte untere Ecke "
+"verändert werden."
#: js/messages.php:276
msgid "Strings are converted into integer for plotting"
@@ -1728,7 +1731,7 @@ msgstr "Spalten hinzufügen/entfernen"
#: js/messages.php:279
msgid "Select two different columns"
-msgstr ""
+msgstr "2 unterschiedliche Spalten auswählen"
#: js/messages.php:282 tbl_change.php:307 tbl_indexes.php:211
#: tbl_indexes.php:238
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15590-gd1684d6
by Michal Čihař 17 Aug '11
by Michal Čihař 17 Aug '11
17 Aug '11
The branch, master has been updated
via d1684d6d965cbe2a029644c14871d668470dbad8 (commit)
from 79b5bd602e50cc5eff4c32c85df673f7eac94862 (commit)
- Log -----------------------------------------------------------------
commit d1684d6d965cbe2a029644c14871d668470dbad8
Author: Michal Čihař <michal(a)cihar.com>
Date: Wed Aug 17 16:56:04 2011 +0200
Ignore another external lib
-----------------------------------------------------------------------
Summary of changes:
build.xml | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/build.xml b/build.xml
index 5365747..d898a83 100644
--- a/build.xml
+++ b/build.xml
@@ -38,7 +38,7 @@
<arg line="${source_comma_sep}
xml
codesize,design,naming,unusedcode
- --exclude test,build,tcpdf,php-gettext
+ --exclude test,build,tcpdf,php-gettext,bfShapeFiles
--reportfile ${basedir}/build/logs/pmd.xml" />
</exec>
</target>
@@ -50,6 +50,7 @@
--exclude build
--exclude libraries/tcpdf
--exclude libraries/php-gettext
+ --exclude libraries/bfShapeFiles
${source}" />
</exec>
</target>
@@ -61,6 +62,7 @@
--exclude build
--exclude libraries/tcpdf
--exclude libraries/php-gettext
+ --exclude libraries/bfShapeFiles
${source}" />
</exec>
</target>
@@ -68,7 +70,7 @@
<target name="phpcs" description="Generate checkstyle.xml using PHP_CodeSniffer excluding test, tcpdf directories">
<exec executable="phpcs">
<arg line="
- --ignore=*/php-gettext/*,*/tcpdf/*,*/canvg/*,*/codemirror/*,*/highcharts/*,*/openlayers/*,*/jquery/*,*/build/*
+ --ignore=*/php-gettext/*,*/tcpdf/*,*/canvg/*,*/codemirror/*,*/highcharts/*,*/openlayers/*,*/jquery/*,*/build/*,*/bfShapeFiles/*
--report=checkstyle
--report-file=${basedir}/build/logs/checkstyle.xml
--standard=PEAR
hooks/post-receive
--
phpMyAdmin
1
0

[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-15589-g79b5bd6
by Madhura Jayaratne 17 Aug '11
by Madhura Jayaratne 17 Aug '11
17 Aug '11
The branch, master has been updated
via 79b5bd602e50cc5eff4c32c85df673f7eac94862 (commit)
via d501fc1fe6f1f449ddadb13dacf505a841e7ec85 (commit)
via 0387ea0b40ad47dea5fad3c2b432452b31605dd1 (commit)
via 46722b80359c81626bdbc429329b1bc710db3530 (commit)
via 5e11e88a147e16c96c33547e199dca31d1a20c77 (commit)
via 5744b9622d0bc76250e20127fd4a0329919f4af9 (commit)
via 7d7dd02e8cd2048f3e11585da86892bf7c4a6dea (commit)
via 16a039392b4a8ea028b38f969ef7e4e586532b94 (commit)
via 9ed1cd7c3ef2eb5cb9b3511aec280f89937b3cd0 (commit)
via d6bf1cd451be99703fe428fb90747ef71b625a3e (commit)
via cb176b2648f0d787d115290212ab829372414a16 (commit)
via 005a4ce61b0f5818f8bcba83f8eda7a3192301f3 (commit)
via bedd7087f369567288ccdbb0898ed4dec90666e3 (commit)
via cb0eca28e4014555c219b290e47a282474281e94 (commit)
via 414ac18e624fafb84cd82f89eb8ae628f6e93957 (commit)
via 333dc9ccec0e6f16ea7dbf65acdd9549311d169b (commit)
via f60672d0d3f8864a67ca92c7f5044b74073fe430 (commit)
via 760d895036176c2d2ca60d63150ce9b5a44379cd (commit)
via 68d617ad17d60851d69c50d58d728702f8cd6cff (commit)
via 591be45324f3e67c281c2e36d8624daf741bca0e (commit)
via 881d2f29b7d3021be171964fa735ac634921c400 (commit)
via 81667ad578c52a47071394bb4baba5e51be7ac0d (commit)
via 7f94f8ea738d727389f63bd99d33b4e6f4130220 (commit)
via ca0bf0be2763b2659fb44391f329a8cb80256b3e (commit)
via b67c913fadc71fec51d139d96cf5afe98656db1f (commit)
via 84f2882bbf19dd8f1eec3b81a29a3eecb63b2af2 (commit)
via fa3e058e251d72a758629248a7ced02b89b3d62a (commit)
via 0e8492769354e5b5e2187d4fcda73f174c8f0417 (commit)
via 9c316b7b1158b9207c8a87d04ddbedebac1a42dc (commit)
via acb6656961eb5191e7e3f8cd3ea09638f5d5f3ec (commit)
via a1f2d5311ad9c47092e4b95f28125bc2a7bfdaa3 (commit)
via 2f6a53f50d979aca1c06891e8774e5952d4e0d80 (commit)
via 2b749e30c562c76441589e7123b8dbb4e520f47a (commit)
via 218a2b561c7b242e4a10c11b7da7dbac4bcdadfe (commit)
via 1a16ba7caecf157d7ac976acdd8df16bff698c10 (commit)
via 2923f1cdb58d07ddc99146e85e0d91d8f98a45eb (commit)
via 981cfeac2ede69205da710ac38714938bcb85239 (commit)
via e2d535cc56d05d9ff0ffa9716f6580ef1a4fadf3 (commit)
via 3da9f02130a4f7fa951f72d0667a4e543f76b683 (commit)
via 175a6e094801ff0a4097eaeeeda665ab8f35e212 (commit)
via 7fe1ce201fc793c09b5833a4933c0b0bf81348a0 (commit)
via ba99e8fe12e3a13c839f9bb488ad1ade636bed4e (commit)
via dc823602428de00f987425ccdbbb903044572551 (commit)
via 3611d48325f6e2990a5d29060503237f83d52257 (commit)
via 36c55adb9ebc4b341bc52e3ad839b9909365fa78 (commit)
via 304a5d666b1f52695851df6a9d2ead74e3f8f9c1 (commit)
via fe10dec01f77a40afab3a0c97d03ee9d458d7501 (commit)
via f00b473c17bce475816f0be84b48f572f404fbb5 (commit)
via e62c03f7a5b153ec7524157a7ec8878f46ce0162 (commit)
via 7a955d4c66a0690d66f312aca1460d6f7d3da9b0 (commit)
via d3bd2d5d91c25c77a192041216898d17059df401 (commit)
via 3efcd0e24bd9a096611ae94d2c35bc2b5f48455a (commit)
via ed5c01dc440f28486a3f6db546d5faf7d7e41165 (commit)
via 5ccc1dec16ec46422544c984f4b884ae25fef066 (commit)
via 516557716a37836df650387bfbc0034031476c24 (commit)
via 0a80147c4623dff9420cda8ef7e26a0f279566c4 (commit)
via 6ae969a5ee3d2e30ccf3d95aefa7f641a3ccd2db (commit)
via 6c6e43b78a43e323de38331e6f0e7668851e59fe (commit)
via c53750eac09bbff5388613d97297b1cdece2e99f (commit)
via db1f83b55b151c100a3aa9a81f7856432f730386 (commit)
via c73380be3509626fbdb7b5027b7d80abb16f2588 (commit)
via c3189393448f80543ecdb6c94c8c533f204cb0ad (commit)
via e456f221494e1ccf76d5b8f73ca5e6896feec113 (commit)
via 47a8dcfc8885a0086fc8c8b9b5a49e783d81180a (commit)
via aed7270cb99b80ccc7abe970a566e6241ccec159 (commit)
via 01976f1663f7d36d18f65574276f7250b506ef94 (commit)
via 003496969e3a5ab8a04e939c945f42c90dfe7f49 (commit)
via b48a250ca8ceb4ab07caa502f05772b9d02acb25 (commit)
via ec7feea9b04d173f2468d7fa3294be23b1965427 (commit)
via 11ca5daa412c0338d63020f94f74530e95463ce9 (commit)
via 1f2ba4e9cc51c2bf2b1c1b96f78f29143e033e36 (commit)
via 47fdfad3361fc5840776060c2326505de1512ee3 (commit)
via 6f35aaa8e46e1bc50b4b5e38d4b9c4810c5c71ce (commit)
via 47762d7b14815296256dea277647f152c1c5c2fc (commit)
via 015ad8968008284f565ecd1274f37ddcd89ca06e (commit)
via 4d7b7d9a88012563463df82b904a6859400de7d9 (commit)
via 0e4435266b588de8788b01bb92bf8261c3762ab5 (commit)
via 2a402a3103c5a12e6c9d2fd2515d7695da2942ff (commit)
via 5a6379f93e97a4535a3a78b56ddc6a5cbe3901e8 (commit)
via 96785858bc79297b34b06722fc833bb033aa10c4 (commit)
via d85c777c78a854d56d39cb6420624e22eedc6586 (commit)
via 1b9ddd2efa71971ef1b78356cc878af437cdf5dd (commit)
via ba93a625b9de49fc10c1d65a880768258497459c (commit)
via 7af88c04c75641fc3aba7e26935c0ef8f9e2dcbe (commit)
via ed23518a44fdd62c5394c785e515d65f7c4910eb (commit)
via ffb970f169f6e9642fd9fe924cca88f8c14695d2 (commit)
via 83d8d3a8ed3043f52b1f1ef42af33fccfead1e87 (commit)
via b2d703dbea2077c9ff48686ee230d7a7ff224318 (commit)
via 166b571964d6c3513359512b8eef83584f2f9ddf (commit)
via 56090dd46f34e485199541d1262dc70c85001ede (commit)
via f5bd53fae03e41c2b26f3769ce891270d00d39e9 (commit)
via c18ef53b57ba72a6b35e479b3510d855cc636aa7 (commit)
via bb987837ebf198e60503231bbf7cc9a50eea3337 (commit)
via 6e7c3adbc15eb1f4b822a083b954cbc39a02bc13 (commit)
via 0c9301f7dbc88ee49021f708d9004e0b57975fd8 (commit)
via fd0cb076c0c415c321edf8e811c9691d6f2ca06f (commit)
via 4ee9d4834639659f73635825f367c842fcd0e090 (commit)
via c97bb579250bdafa23e60386facf3f12034d287b (commit)
via b1634f80fd598d67130b7fccd29f7bc8dbc726b4 (commit)
via ac4f0a10b0593b20cb49116df0170912ab292e69 (commit)
via 66f73b4114bf8e60496fe052ec86b33c65c3137e (commit)
via e0e0dea09b25da67f60d787b0c2312dbbc5a7660 (commit)
via 1d9ef026089b7b52061f4558ddaaed10d500df60 (commit)
via a1e6b187c60999d1934ed5f7428c95f0a5d3820d (commit)
via f76785603f311153f7217ec45575c98440b07381 (commit)
via 2bf70868bbd9c69036470b4a9cbfe2fe29e1a8fc (commit)
via 242534a78ad3d26334cd97dcf8346c7cd327179b (commit)
via be8ce3d5b61a069ab2dc4caf2206db1af67cd15c (commit)
via e7135574bd2acefa90c7b2e654d2344d3027e479 (commit)
via b9e5125870e8d6575f679d59d46e1fddec2f9e0c (commit)
via c821997a5a69e8f37ce8b802211774b33a479103 (commit)
via 3ca86a3929e201898e692ab3608d0dcf1a8a4bf2 (commit)
via 4e8cc7dc97871ba757517d0791488d57abee71a1 (commit)
via 6f3cf75e317dda6dc4a41a5b0c1227962edd30e0 (commit)
via 2795a9061ca0a2c4f344303b686c64dbbc7032cd (commit)
via c81db372d79bf96acc8a4a2cdb2fe7f0430b57e4 (commit)
via faced3027aa337a629f69a3e6b67410ad9f07df3 (commit)
via a58bb10e1839d0740cb634112f36462d52d4ac6f (commit)
via 28519cf25befaba56aa677d38af2847c2a7febcb (commit)
via 6f4db19f53370d1e220ba396408dc6e03e0061d9 (commit)
via c6a8098239bac87d105525173e14cf1d1cbc0afa (commit)
via 5a1018fc43c63c12c8ba8787e83ce4d48f91ff6e (commit)
via 4d111205b1dfb1ef220b052f8ba96b8b1c47af0d (commit)
via 93ab68dd131616369dccd0a6a62ff5f1a1a710d2 (commit)
via cfeb031d1f8d7c31cb3fdf6b376ba7b7ea757a59 (commit)
via ae88c2e758de107313e8a8cfaa192c42984a9fb8 (commit)
via c4faafdc792abb3b2bef62b70ab7f32fd85aa143 (commit)
via 1bc0473fe2b2c5fe24ccb2a1541b70e584009265 (commit)
via b8ddd56d78598c497e4b4b0b1ffa27ed0550ebc8 (commit)
via 67ef96d1f6d6bbf6b7d906a02c4c79898a11ee66 (commit)
via 52501828f77f16baac93b16f706c6262ed55a926 (commit)
via ff3efd4b7d3ac7b00117d7ef78f239972e3f9d50 (commit)
via 5ac3f567c454764152631c26a9dafec7bf7eef0a (commit)
via da6fe46a4d34c650e3d7f0b70d04ea22730f8e19 (commit)
via d257d46dee97fb57173642fafe26a9f8b7f5b10c (commit)
via 63900d009441d8e81714ea56337d5b736806fca1 (commit)
from c04a557c02c590eb141661780f731540d46ba74c (commit)
- Log -----------------------------------------------------------------
commit 79b5bd602e50cc5eff4c32c85df673f7eac94862
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 19:14:43 2011 +0530
Changelog entries for GIS features
commit d501fc1fe6f1f449ddadb13dacf505a841e7ec85
Merge: c04a557 0387ea0
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 18:02:25 2011 +0530
Merge branch 'OpenGIS'
commit 0387ea0b40ad47dea5fad3c2b432452b31605dd1
Merge: 46722b8 aca93f4
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 16:48:50 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 46722b80359c81626bdbc429329b1bc710db3530
Merge: 5e11e88 576e76d
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 17 16:43:18 2011 +0530
Merge branch 'master' into OpenGIS
commit 5e11e88a147e16c96c33547e199dca31d1a20c77
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 17:31:38 2011 +0530
Mention the use of TempDir for ESRI Shapefile imports
commit 5744b9622d0bc76250e20127fd4a0329919f4af9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 17:24:39 2011 +0530
Documentation about importing ESRI Shapefiles
commit 7d7dd02e8cd2048f3e11585da86892bf7c4a6dea
Merge: 16a0393 9147f30
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 14:12:46 2011 +0530
Merge branch 'master' into OpenGIS
Conflicts:
tbl_select.php
commit 16a039392b4a8ea028b38f969ef7e4e586532b94
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 10:11:08 2011 +0530
Remove tab characters
commit 9ed1cd7c3ef2eb5cb9b3511aec280f89937b3cd0
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 10:10:32 2011 +0530
Use abstract test class to avoid code duplications in tests
commit d6bf1cd451be99703fe428fb90747ef71b625a3e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 10:02:39 2011 +0530
Adhere to coding style
commit cb176b2648f0d787d115290212ab829372414a16
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 13 00:17:36 2011 +0530
Unit tests for PMA_GIS_Factory class
commit 005a4ce61b0f5818f8bcba83f8eda7a3192301f3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 15:09:03 2011 +0530
Unit test for PMA_GIS_modifyQuery
commit bedd7087f369567288ccdbb0898ed4dec90666e3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 14:03:40 2011 +0530
Wrap long lines
commit cb0eca28e4014555c219b290e47a282474281e94
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 13:50:28 2011 +0530
Rename functions to match PEAR coding style
commit 414ac18e624fafb84cd82f89eb8ae628f6e93957
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 13:32:43 2011 +0530
Remove redundant parameter
commit 333dc9ccec0e6f16ea7dbf65acdd9549311d169b
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 11:59:22 2011 +0530
Unit tests for PMA_GIS_Multipolygon class
commit f60672d0d3f8864a67ca92c7f5044b74073fe430
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 11:22:57 2011 +0530
More tests for PMA_GIS_Polygon class
commit 760d895036176c2d2ca60d63150ce9b5a44379cd
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 08:30:14 2011 +0530
Unit tests for PMA_GIS_Polygon class
commit 68d617ad17d60851d69c50d58d728702f8cd6cff
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 12 07:03:24 2011 +0530
Unit tests for PMA_GIS_Multilinestring class
commit 591be45324f3e67c281c2e36d8624daf741bca0e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 11 22:40:55 2011 +0530
Unit tests for PMA_GIS_Linestring class
commit 881d2f29b7d3021be171964fa735ac634921c400
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 11 22:01:24 2011 +0530
Tests for PMA_GIS_Multipoint class
commit 81667ad578c52a47071394bb4baba5e51be7ac0d
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 11 21:45:24 2011 +0530
Unit tests for PMA_GIS_Point class
commit 7f94f8ea738d727389f63bd99d33b4e6f4130220
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 11 21:21:19 2011 +0530
Wrap long lines
commit ca0bf0be2763b2659fb44391f329a8cb80256b3e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 11 21:20:24 2011 +0530
Fix coding style
commit b67c913fadc71fec51d139d96cf5afe98656db1f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 10 00:23:43 2011 +0530
Avoid undefined variable notice.
commit 84f2882bbf19dd8f1eec3b81a29a3eecb63b2af2
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 10 00:09:42 2011 +0530
Added missing question mark in the URL
commit fa3e058e251d72a758629248a7ced02b89b3d62a
Merge: 0e84927 630cdd9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Aug 9 06:16:12 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 0e8492769354e5b5e2187d4fcda73f174c8f0417
Merge: 9c316b7 c00b1e5
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Aug 8 07:45:53 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
Conflicts:
libraries/common.lib.php
commit 9c316b7b1158b9207c8a87d04ddbedebac1a42dc
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Aug 7 07:11:38 2011 +0530
Reduce font size. Remove black from the color list
commit acb6656961eb5191e7e3f8cd3ea09638f5d5f3ec
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 6 10:59:06 2011 +0530
Labels for each part in the geometry is not a good idea
commit a1f2d5311ad9c47092e4b95f28125bc2a7bfdaa3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 6 10:35:15 2011 +0530
Abstract function definition to the PMA_GIS_Geometry class
commit 2f6a53f50d979aca1c06891e8774e5952d4e0d80
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 6 10:18:21 2011 +0530
Labels for polygons and multipolygons
commit 2b749e30c562c76441589e7123b8dbb4e520f47a
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Aug 6 10:03:23 2011 +0530
Should verify that the point is not empty first
commit 218a2b561c7b242e4a10c11b7da7dbac4bcdadfe
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 5 05:55:51 2011 +0530
Labels for linestrings and multilinestring exported to PNG and PDF
commit 1a16ba7caecf157d7ac976acdd8df16bff698c10
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 5 05:29:29 2011 +0530
Labels for points and multipoint exported to PDF
commit 2923f1cdb58d07ddc99146e85e0d91d8f98a45eb
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 5 05:05:22 2011 +0530
Labels for multipoints exported to PNG
commit 981cfeac2ede69205da710ac38714938bcb85239
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Aug 5 05:01:08 2011 +0530
Labels for exporting points as PNG
commit e2d535cc56d05d9ff0ffa9716f6580ef1a4fadf3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Aug 4 09:39:58 2011 +0530
Use $cfg['PDFDefaultPageSize'] when exporting to PDF
commit 3da9f02130a4f7fa951f72d0667a4e543f76b683
Merge: 175a6e0 54fbcaa
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 3 18:17:57 2011 +0530
Merge branch 'master' into OpenGIS
commit 175a6e094801ff0a4097eaeeeda665ab8f35e212
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 3 18:11:32 2011 +0530
Use hexadecimal form to create a unique condition for geometry fields
commit 7fe1ce201fc793c09b5833a4933c0b0bf81348a0
Merge: ba99e8f 663d073
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Aug 3 00:53:53 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit ba99e8fe12e3a13c839f9bb488ad1ade636bed4e
Merge: dc82360 19172fb
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Aug 2 00:34:27 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit dc823602428de00f987425ccdbbb903044572551
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Aug 2 00:32:32 2011 +0530
Prepares and insert GIS data to the input field on pressing 'enter'
commit 3611d48325f6e2990a5d29060503237f83d52257
Merge: 36c55ad 15a384a
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Aug 1 09:40:36 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 36c55adb9ebc4b341bc52e3ad839b9909365fa78
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Aug 1 09:36:29 2011 +0530
Disabling causes problems as value is not passed. Use readonly.
commit 304a5d666b1f52695851df6a9d2ead74e3f8f9c1
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Aug 1 00:25:02 2011 +0530
Avoid undefined variables
commit fe10dec01f77a40afab3a0c97d03ee9d458d7501
Merge: f00b473 1917807
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 23:25:33 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit f00b473c17bce475816f0be84b48f572f404fbb5
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 23:14:43 2011 +0530
Accept WKTs without SRID
commit e62c03f7a5b153ec7524157a7ec8878f46ce0162
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 22:28:02 2011 +0530
Avoid undefined index
commit 7a955d4c66a0690d66f312aca1460d6f7d3da9b0
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 21:55:21 2011 +0530
GIS data editor to insert geometry type parameters
commit d3bd2d5d91c25c77a192041216898d17059df401
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 18:33:02 2011 +0530
Refractor common code to gis_data_editor.js. Remove hidden input to track null checkbox.
commit 3efcd0e24bd9a096611ae94d2c35bc2b5f48455a
Merge: 6c6e43b ed5c01d
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 16:24:20 2011 +0530
Merge branch 'master' of ssh://repo.or.cz/srv/git/phpmyadmin/madhuracj into OpenGIS
commit ed5c01dc440f28486a3f6db546d5faf7d7e41165
Merge: 5ccc1de e3b91b7
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 16:13:26 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 5ccc1dec16ec46422544c984f4b884ae25fef066
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 15:53:35 2011 +0530
Styles adjusted to suit the AJAX dialog
commit 516557716a37836df650387bfbc0034031476c24
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 15:32:59 2011 +0530
Remove the content when AJAX dialog closes
commit 0a80147c4623dff9420cda8ef7e26a0f279566c4
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 14:34:29 2011 +0530
In multi editing this used to cause duplicate IDs for elements
commit 6ae969a5ee3d2e30ccf3d95aefa7f641a3ccd2db
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 14:04:12 2011 +0530
Serve OpenStreetMap.js locally
commit 6c6e43b78a43e323de38331e6f0e7668851e59fe
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 10:15:10 2011 +0530
Control selection based on the selected function.
commit c53750eac09bbff5388613d97297b1cdece2e99f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 09:07:58 2011 +0530
'Function based search' for functions that tests spatial relations between geometric objects
commit db1f83b55b151c100a3aa9a81f7856432f730386
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 01:40:55 2011 +0530
Make it possible to compare with WKB
commit c73380be3509626fbdb7b5027b7d80abb16f2588
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 01:26:31 2011 +0530
Make it more readable
commit c3189393448f80543ecdb6c94c8c533f204cb0ad
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 01:14:42 2011 +0530
Use curly brackets for if/else and foreach blocks
commit e456f221494e1ccf76d5b8f73ca5e6896feec113
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 31 01:11:11 2011 +0530
Detect the output type of the functions being applied
commit 47a8dcfc8885a0086fc8c8b9b5a49e783d81180a
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 28 12:06:15 2011 +0530
Function based search - for unary functions
commit aed7270cb99b80ccc7abe970a566e6241ccec159
Merge: 01976f1 66c0be9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 30 22:53:07 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 01976f1663f7d36d18f65574276f7250b506ef94
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 28 11:44:18 2011 +0530
Handle the cases where URL is too long
commit 003496969e3a5ab8a04e939c945f42c90dfe7f49
Merge: b48a250 e58eea5
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 28 06:01:39 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit b48a250ca8ceb4ab07caa502f05772b9d02acb25
Merge: ec7feea ad4975b
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Jul 26 21:45:43 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit ec7feea9b04d173f2468d7fa3294be23b1965427
Merge: 11ca5da c3863f0
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 24 23:05:35 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
Conflicts:
libraries/import.lib.php
libraries/zip_extension.lib.php
commit 11ca5daa412c0338d63020f94f74530e95463ce9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 24 22:30:52 2011 +0530
Change of color
commit 1f2ba4e9cc51c2bf2b1c1b96f78f29143e033e36
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 24 22:17:03 2011 +0530
Resolves problems with point and multipoint visualizations due to the assumption of empty values as zeros
commit 47fdfad3361fc5840776060c2326505de1512ee3
Merge: 6f35aaa 4925260
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 22 04:07:09 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
Conflicts:
libraries/gis/pma_gis_geometrycollection.php
commit 6f35aaa8e46e1bc50b4b5e38d4b9c4810c5c71ce
Merge: 47762d7 75bb94f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 20 23:15:01 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
Conflicts:
libraries/import.lib.php
commit 47762d7b14815296256dea277647f152c1c5c2fc
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 20 23:07:53 2011 +0530
Better organized JS code
commit 015ad8968008284f565ecd1274f37ddcd89ca06e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 20 15:41:35 2011 +0530
Size of GIS visualization auto adjusted to fit the available space
commit 4d7b7d9a88012563463df82b904a6859400de7d9
Merge: 0e44352 1b56916
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 18 14:08:37 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 0e4435266b588de8788b01bb92bf8261c3762ab5
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 18 14:03:21 2011 +0530
Change of classes to avoid conflicts with classes used in tbl_gis_visualization.js
commit 2a402a3103c5a12e6c9d2fd2515d7695da2942ff
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 18 13:43:46 2011 +0530
OpenStreetMaps based data visualization for GIS data editor
commit 5a6379f93e97a4535a3a78b56ddc6a5cbe3901e8
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 17 16:59:25 2011 +0530
SVG based data visualization for GIS data editor
commit 96785858bc79297b34b06722fc833bb033aa10c4
Merge: d85c777 10fa6c5
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 14:19:27 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit d85c777c78a854d56d39cb6420624e22eedc6586
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 14:17:17 2011 +0530
Chose the correct GIS type
commit 1b9ddd2efa71971ef1b78356cc878af437cdf5dd
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 13:23:11 2011 +0530
These should be PMA_messages[]
commit ba93a625b9de49fc10c1d65a880768258497459c
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 13:14:29 2011 +0530
Make JS messages translatable.
commit 7af88c04c75641fc3aba7e26935c0ef8f9e2dcbe
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 11:05:53 2011 +0530
Cleanup spaces
commit ed23518a44fdd62c5394c785e515d65f7c4910eb
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 10:50:22 2011 +0530
Handle adding polygons and geometry objects
commit ffb970f169f6e9642fd9fe924cca88f8c14695d2
Merge: 83d8d3a 10cbf3b
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 02:18:41 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 83d8d3a8ed3043f52b1f1ef42af33fccfead1e87
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 02:11:18 2011 +0530
Handle adding linestrings and inner rings. Better comments
commit b2d703dbea2077c9ff48686ee230d7a7ff224318
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 16 00:29:00 2011 +0530
Add points with JavaScript
commit 166b571964d6c3513359512b8eef83584f2f9ddf
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 23:13:00 2011 +0530
Non JS version does not need this parameters.
commit 56090dd46f34e485199541d1262dc70c85001ede
Merge: f5bd53f 108f738
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 18:35:32 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit f5bd53fae03e41c2b26f3769ce891270d00d39e9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 18:31:15 2011 +0530
Remove hidden fields not used.
commit c18ef53b57ba72a6b35e479b3510d855cc636aa7
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 18:30:28 2011 +0530
Do not use PMA_mysqlDie() to handle these errors.
commit bb987837ebf198e60503231bbf7cc9a50eea3337
Merge: 6e7c3ad 117dd68
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 00:34:28 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 6e7c3adbc15eb1f4b822a083b954cbc39a02bc13
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 00:27:31 2011 +0530
Trigger AJAX calls on data change and update the output
commit 0c9301f7dbc88ee49021f708d9004e0b57975fd8
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 00:04:32 2011 +0530
Corrected order of includes.
commit fd0cb076c0c415c321edf8e811c9691d6f2ca06f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 15 00:03:48 2011 +0530
Better styling for GIS data editor.
commit 4ee9d4834639659f73635825f367c842fcd0e090
Merge: c97bb57 7f5cbe9
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 19:49:59 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit c97bb579250bdafa23e60386facf3f12034d287b
Merge: b1634f8 ac4f0a1
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 19:45:16 2011 +0530
Merge branch 'master' of ssh://repo.or.cz/srv/git/phpmyadmin/madhuracj into OpenGIS
commit b1634f80fd598d67130b7fccd29f7bc8dbc726b4
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 19:39:39 2011 +0530
GIS data editor extended for JS enabled browsers
commit ac4f0a10b0593b20cb49116df0170912ab292e69
Merge: 66f73b4 ad87dcf
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 10:01:41 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 66f73b4114bf8e60496fe052ec86b33c65c3137e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 09:59:35 2011 +0530
Better error handling.
commit e0e0dea09b25da67f60d787b0c2312dbbc5a7660
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jul 14 00:09:25 2011 +0530
1) Better error handling. 2)Typo
commit 1d9ef026089b7b52061f4558ddaaed10d500df60
Merge: a1e6b18 f57faf6
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 13 23:55:14 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit a1e6b187c60999d1934ed5f7428c95f0a5d3820d
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 13 23:51:25 2011 +0530
Correctly display error message for zero data.
commit f76785603f311153f7217ec45575c98440b07381
Merge: 2bf7086 2c0d2ac
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 13 00:20:41 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 2bf70868bbd9c69036470b4a9cbfe2fe29e1a8fc
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 13 00:19:11 2011 +0530
Avoid undefined variables
commit 242534a78ad3d26334cd97dcf8346c7cd327179b
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Wed Jul 13 00:17:09 2011 +0530
Avoid divide by zero error
commit be8ce3d5b61a069ab2dc4caf2206db1af67cd15c
Merge: e713557 7802be3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Jul 12 19:04:47 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit e7135574bd2acefa90c7b2e654d2344d3027e479
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Jul 12 14:21:48 2011 +0530
Trim the name before being displayed as the tooltip.
commit b9e5125870e8d6575f679d59d46e1fddec2f9e0c
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 11 22:25:45 2011 +0530
Correctly display null and empty values in geometry columns
commit c821997a5a69e8f37ce8b802211774b33a479103
Merge: 3ca86a3 4bb11fd
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 11 21:36:38 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 3ca86a3929e201898e692ab3608d0dcf1a8a4bf2
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 11 21:29:48 2011 +0530
Protection against malformed WKT and null
commit 4e8cc7dc97871ba757517d0791488d57abee71a1
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 10 23:29:05 2011 +0530
Avoid accessing undefined variables
commit 6f3cf75e317dda6dc4a41a5b0c1227962edd30e0
Merge: 2795a90 4ae5cb0
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 10 22:26:15 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 2795a9061ca0a2c4f344303b686c64dbbc7032cd
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 10 22:13:50 2011 +0530
Resolve problems due to merge commit
commit c81db372d79bf96acc8a4a2cdb2fe7f0430b57e4
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 9 19:18:03 2011 +0530
Manually implemented PointOnSurface() function as it is not yet implemented in MySQL
commit faced3027aa337a629f69a3e6b67410ad9f07df3
Merge: a58bb10 429328b
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jul 9 15:41:56 2011 +0530
Merge remote branch 'origin/master' into OpenGIS
commit a58bb10e1839d0740cb634112f36462d52d4ac6f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 8 18:32:35 2011 +0530
Correctly import multipolygons from ESRI shape files
commit 28519cf25befaba56aa677d38af2847c2a7febcb
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Fri Jul 8 18:31:19 2011 +0530
ESRI shape files imported from a zip archive
commit 6f4db19f53370d1e220ba396408dc6e03e0061d9
Merge: c6a8098 b856161
Author: Madhura <madhura.cj(a)gmail.com>
Date: Fri Jul 8 18:05:52 2011 +0530
Merge remote branch 'origin/master' into OpenGIS
commit c6a8098239bac87d105525173e14cf1d1cbc0afa
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Mon Jul 4 00:31:24 2011 +0530
Typo
commit 5a1018fc43c63c12c8ba8787e83ce4d48f91ff6e
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 23:56:47 2011 +0530
Increase memory limit and time limit
commit 4d111205b1dfb1ef220b052f8ba96b8b1c47af0d
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 22:46:48 2011 +0530
A polygon needs to have atleast 4 points - more instances
commit 93ab68dd131616369dccd0a6a62ff5f1a1a710d2
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 22:41:52 2011 +0530
A polygon needs to have atleast 4 points - more instances
commit cfeb031d1f8d7c31cb3fdf6b376ba7b7ea757a59
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 22:36:34 2011 +0530
A polygon needs to have atleast 4 points.
commit ae88c2e758de107313e8a8cfaa192c42984a9fb8
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 22:14:14 2011 +0530
Tabs replaced with spaces
commit c4faafdc792abb3b2bef62b70ab7f32fd85aa143
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 22:12:02 2011 +0530
Import GIS data from ESRI shape files
commit 1bc0473fe2b2c5fe24ccb2a1541b70e584009265
Merge: b8ddd56 64e4f9f
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jul 3 21:42:04 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
Conflicts:
tbl_replace.php
commit b8ddd56d78598c497e4b4b0b1ffa27ed0550ebc8
Merge: 67ef96d cbf00bc
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jun 30 10:01:33 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 67ef96d1f6d6bbf6b7d906a02c4c79898a11ee66
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Thu Jun 30 09:58:09 2011 +0530
Check whether the variable is set before accessing it.
commit 52501828f77f16baac93b16f706c6262ed55a926
Merge: ff3efd4 02b1b32
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jun 26 18:01:41 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit ff3efd4b7d3ac7b00117d7ef78f239972e3f9d50
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sun Jun 26 17:57:12 2011 +0530
Editing geometry data using GIS data editor.
commit 5ac3f567c454764152631c26a9dafec7bf7eef0a
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jun 25 23:01:48 2011 +0530
GIS data editing for POINT
commit da6fe46a4d34c650e3d7f0b70d04ea22730f8e19
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jun 25 21:24:07 2011 +0530
GISFromWKB functions in data insert/edit window fixed.
commit d257d46dee97fb57173642fafe26a9f8b7f5b10c
Merge: 63900d0 5403fc1
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jun 25 19:48:40 2011 +0530
Merge branch 'master' of git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin into OpenGIS
commit 63900d009441d8e81714ea56337d5b736806fca1
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Sat Jun 25 19:39:31 2011 +0530
GIS data editor for environments without JavaScript support.
GIS data preserved while editing.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 3 +
Documentation.html | 42 ++-
gis_data_editor.php | 335 +++++++++++
js/OpenStreetMap.js | 125 ++++
js/gis_data_editor.js | 309 ++++++++++
js/messages.php | 12 +
js/sql.js | 10 +-
js/tbl_change.js | 29 +-
js/tbl_gis_visualization.js | 146 ++++--
js/tbl_select.js | 89 +++-
libraries/bfShapeFiles/ShapeFile.lib.php | 649 +++++++++++++++++++++
libraries/common.lib.php | 193 ++++++-
libraries/config.default.php | 1 +
libraries/display_tbl.lib.php | 96 ++--
libraries/gis/pma_gis_factory.php | 7 +-
libraries/gis/pma_gis_geometry.php | 53 ++-
libraries/gis/pma_gis_geometrycollection.php | 81 +++
libraries/gis/pma_gis_linestring.php | 76 +++
libraries/gis/pma_gis_multilinestring.php | 119 ++++
libraries/gis/pma_gis_multipoint.php | 130 ++++-
libraries/gis/pma_gis_multipolygon.php | 209 +++++++
libraries/gis/pma_gis_point.php | 104 +++-
libraries/gis/pma_gis_polygon.php | 254 ++++++++
libraries/gis/pma_gis_visualization.php | 62 ++-
libraries/gis_visualization.lib.php | 19 +-
libraries/import.lib.php | 43 +-
libraries/import/shp.php | 399 +++++++++++++
libraries/tbl_select.lib.php | 134 ++++-
libraries/zip_extension.lib.php | 79 +++-
sql.php | 9 +
tbl_change.php | 35 +-
tbl_gis_visualization.php | 39 +--
tbl_replace.php | 35 +-
tbl_select.php | 60 ++-
test/classes/gis/PMA_GIS_Factory_test.php | 80 +++
test/classes/gis/PMA_GIS_Geometry_test.php | 60 ++
test/classes/gis/PMA_GIS_Linestring_test.php | 142 +++++
test/classes/gis/PMA_GIS_Multilinestring_test.php | 182 ++++++
test/classes/gis/PMA_GIS_Multipoint_test.php | 146 +++++
test/classes/gis/PMA_GIS_Multipolygon_test.php | 139 +++++
test/classes/gis/PMA_GIS_Point_test.php | 148 +++++
test/classes/gis/PMA_GIS_Polygon_test.php | 299 ++++++++++
test/libraries/PMA_GIS_modifyQuery_test.php | 94 +++
themes/original/css/theme_right.css.php | 38 ++
themes/pmahomme/css/theme_right.css.php | 38 ++
45 files changed, 5090 insertions(+), 262 deletions(-)
create mode 100644 gis_data_editor.php
create mode 100644 js/OpenStreetMap.js
create mode 100644 js/gis_data_editor.js
create mode 100644 libraries/bfShapeFiles/ShapeFile.lib.php
create mode 100644 libraries/import/shp.php
create mode 100644 test/classes/gis/PMA_GIS_Factory_test.php
create mode 100644 test/classes/gis/PMA_GIS_Geometry_test.php
create mode 100644 test/classes/gis/PMA_GIS_Linestring_test.php
create mode 100644 test/classes/gis/PMA_GIS_Multilinestring_test.php
create mode 100644 test/classes/gis/PMA_GIS_Multipoint_test.php
create mode 100644 test/classes/gis/PMA_GIS_Multipolygon_test.php
create mode 100644 test/classes/gis/PMA_GIS_Point_test.php
create mode 100644 test/classes/gis/PMA_GIS_Polygon_test.php
create mode 100644 test/libraries/PMA_GIS_modifyQuery_test.php
diff --git a/ChangeLog b/ChangeLog
index e6c1bc4..f70eae5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -44,6 +44,9 @@ phpMyAdmin - ChangeLog
- bug #3380946 [export] no uid Query result export (Suhosin limit)
+ Grid editing in browse mode (replaces row inline edit)
+ Zoom-search in table Search
++ [interface] Editor for GIS data
++ [import] Import GIS data from ESRI Shapefiles
++ [interface] 'Function based search' for GIS data
3.4.5.0 (not yet released)
- bug #3375325 [interface] Page list in navigation frame looks odd
diff --git a/Documentation.html b/Documentation.html
index 8f7e66f..758a2bc 100644
--- a/Documentation.html
+++ b/Documentation.html
@@ -2088,9 +2088,10 @@ $cfg['TrustedProxies'] =
The name of the directory where temporary files can be stored.
<br /><br />
- This is needed to work around limitations of <tt>open_basedir</tt>
- for uploaded files, see
- <a href="#faq1_11"><abbr title="Frequently Asked Questions">FAQ</abbr>
+ This is needed for importing ESRI Shapefiles, see
+ <a href="#faq6_30"><abbr title="Frequently Asked Questions">FAQ</abbr>
+ 6.30</a> and to work around limitations of <tt>open_basedir</tt> for uploaded
+ files, see <a href="#faq1_11"><abbr title="Frequently Asked Questions">FAQ</abbr>
1.11</a>.
<br /><br />
@@ -4373,6 +4374,41 @@ INSERT INTO REL_towns VALUES ('M', 'Montréal');
<p> Not every table can be put to the chart. Only tables with one, two or three columns can be visualised as a chart. Moreover the table must be in a special format for chart script to understand it. Currently supported formats can be found in the <a href="http://wiki.phpmyadmin.net/pma/Charts#Data_formats_for_query_results_chart">wiki</a>.</p>
+<h4 id="faq6_30">
+ <a href="#faq6_30">6.30 Import: How can I import ESRI Shapefiles</a></h4>
+
+ <p>
+ An ESRI Shapefile is actually a set of several files, where .shp file contains
+ geometry data and .dbf file contains data related to those geometry data.
+ To read data from .dbf file you need to have PHP compiled with the dBase extension
+ (--enable-dbase). Otherwise only geometry data will be imported.
+ </p>
+
+ <p>To upload these set of files you can use either of the following methods:</p>
+ <ul>
+ <li>
+ <p>
+ Configure upload directory with
+ <a href="#cfg_UploadDir" class="configrule">$cfg['UploadDir']</a>, upload both
+ .shp and .dbf files with the same filename and chose the .shp file from the import page.
+ </p>
+ </li>
+ <li>
+ <p>
+ Create a Zip archive with .shp and .dbf files and import it. For this to work,
+ you need to set <a href="#cfg_TempDir" class="configrule">$cfg['TempDir']</a> to a
+ place where the web server user can write (for example <tt>'./tmp'</tt>).
+ </p>
+
+ <p> To create the temporary directory on a UNIX-based system, you can do:</p>
+<pre>
+cd phpMyAdmin
+mkdir tmp
+chmod o+rwx tmp
+</pre>
+ </li>
+ </ul>
+
<h3 id="faqproject">phpMyAdmin project</h3>
<h4 id="faq7_1">
diff --git a/gis_data_editor.php b/gis_data_editor.php
new file mode 100644
index 0000000..7614aba
--- /dev/null
+++ b/gis_data_editor.php
@@ -0,0 +1,335 @@
+<?php
+require_once './libraries/common.inc.php';
+if (! isset($_REQUEST['get_gis_editor']) && ! isset($_REQUEST['generate'])) {
+ require_once './libraries/header_http.inc.php';
+ require_once './libraries/header_meta_style.inc.php';
+}
+require_once './libraries/gis/pma_gis_factory.php';
+require_once './libraries/gis_visualization.lib.php';
+
+// Get data if any posted
+$gis_data = array();
+if (PMA_isValid($_REQUEST['gis_data'], 'array')) {
+ $gis_data = $_REQUEST['gis_data'];
+}
+
+$gis_types = array(
+ 'POINT',
+ 'MULTIPOINT',
+ 'LINESTRING',
+ 'MULTILINESTRING',
+ 'POLYGON',
+ 'MULTIPOLYGON',
+ 'GEOMETRYCOLLECTION'
+);
+
+// Extract type from the initial call and make sure that it's a valid one.
+// Extract from field's values if availbale, if not use the column type passed.
+if (! isset($gis_data['gis_type'])) {
+ if (isset($_REQUEST['type']) && $_REQUEST['type'] != '') {
+ $gis_data['gis_type'] = strtoupper($_REQUEST['type']);
+ }
+ if (isset($_REQUEST['value']) && trim($_REQUEST['value']) != '') {
+ $start = (substr($_REQUEST['value'], 0, 1) == "'") ? 1 : 0;
+ $gis_data['gis_type'] = substr($_REQUEST['value'], $start, strpos($_REQUEST['value'], "(") - $start);
+ }
+ if((! isset($gis_data['gis_type'])) || (! in_array($gis_data['gis_type'], $gis_types))) {
+ $gis_data['gis_type'] = $gis_types[0];
+ }
+}
+$geom_type = $gis_data['gis_type'];
+
+// Generate parameters from value passed.
+$gis_obj = PMA_GIS_Factory::factory($geom_type);
+if (isset($_REQUEST['value'])) {
+ $gis_data = array_merge($gis_data, $gis_obj->generateParams($_REQUEST['value']));
+}
+
+// Generate Well Known Text
+$srid = (isset($gis_data['srid']) && $gis_data['srid'] != '') ? htmlspecialchars($gis_data['srid']) : 0;
+$wkt = $gis_obj->generateWkt($gis_data, 0);
+$wkt_with_zero = $gis_obj->generateWkt($gis_data, 0, '0');
+$result = "'" . $wkt . "'," . $srid;
+
+// Gererate PNG or SVG based visualization
+$format = (PMA_USR_BROWSER_AGENT == 'IE' && PMA_USR_BROWSER_VER <= 8) ? 'png' : 'svg';
+$visualizationSettings = array('width' => 450, 'height' => 300, 'spatialColumn' => 'wkt');
+$data = array(array('wkt' => $wkt_with_zero, 'srid' => $srid));
+$visualization = PMA_GIS_visualizationResults($data, $visualizationSettings, $format);
+$open_layers = PMA_GIS_visualizationResults($data, $visualizationSettings, 'ol');
+
+// If the call is to update the WKT and visualization make an AJAX response
+if(isset($_REQUEST['generate']) && $_REQUEST['generate'] == true) {
+ $extra_data = array(
+ 'result' => $result,
+ 'visualization' => $visualization,
+ 'openLayers' => $open_layers,
+ );
+ PMA_ajaxResponse(null, true, $extra_data);
+}
+
+// If the call is to get the whole content, start buffering, skipping </head> and <body> tags
+if(isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
+ ob_start();
+} else {
+?>
+</head>
+<body>
+<?php
+}
+?>
+ <form id="gis_data_editor_form" action="gis_data_editor.php" method="post">
+ <input type="hidden" id="pmaThemeImage" value="<?php echo($GLOBALS['pmaThemeImage']); ?>" />
+ <div id="gis_data_editor">
+ <h3><?php printf(__('Value for the column "%s"'), htmlspecialchars($_REQUEST['field'])); ?></h3>
+
+<?php echo('<input type="hidden" name="field" value="' . htmlspecialchars($_REQUEST['field']) . '" />');
+ // The input field to which the final result should be added and corresponding null checkbox
+ if (isset($_REQUEST['input_name'])) {
+ echo('<input type="hidden" name="input_name" value="' . htmlspecialchars($_REQUEST['input_name']) . '" />');
+ }
+ echo PMA_generate_common_hidden_inputs();
+?>
+ <!-- Visualization section -->
+ <div id="placeholder" style="width:450px;height:300px;
+<?php if ($srid != 0) {
+ echo('display:none;');
+ }
+?> ">
+<?php echo ($visualization);
+?> </div>
+ <div id="openlayersmap" style="width:450px;height:300px;
+<?php if ($srid == 0) {
+ echo('display:none;');
+ }
+?> ">
+ </div>
+ <div class="choice" style="float:right;clear:right;">
+ <input type="checkbox" id="choice" value="useBaseLayer"
+<?php if ($srid != 0) {
+ echo(' checked="checked"');
+ }
+?> />
+ <label for="choice"><?php echo __("Use OpenStreetMaps as Base Layer"); ?></label>
+ </div>
+ <script language="javascript" type="text/javascript">
+ <?php echo($open_layers); ?>
+ </script>
+ <!-- End of visualization section -->
+
+ <!-- Header section - Inclueds GIS type selector and input field for SRID -->
+ <div id="gis_data_header">
+ <select name="gis_data[gis_type]" class="gis_type">
+<?php
+ foreach ($gis_types as $gis_type) {
+ echo('<option value="' . $gis_type . '"');
+ if ($geom_type == $gis_type) {
+ echo(' selected="selected"');
+ }
+ echo('>' . $gis_type . '</option>');
+ }
+?>
+ </select>
+ <input type="submit" name="gis_data[go]" class="go" value="<?php echo __("Go")?>" />
+ <label for="srid"><?php echo __("SRID"); ?>: </label>
+ <input name="gis_data[srid]" type="text" value="<?php echo($srid); ?>" />
+ </div>
+ <!-- End of header section -->
+
+ <!-- Data section -->
+ <div id="gis_data">
+<?php $geom_count = 1;
+ if ($geom_type == 'GEOMETRYCOLLECTION') {
+ $geom_count = (isset($gis_data[$geom_type]['geom_count'])) ? $gis_data[$geom_type]['geom_count'] : 1;
+ if (isset($gis_data[$geom_type]['add_geom'])) {
+ $geom_count++;
+ }
+ echo('<input type="hidden" name="gis_data[GEOMETRYCOLLECTION][geom_count]" value="' . $geom_count . '">');
+ }
+ for ($a = 0; $a < $geom_count; $a++) {
+ if ($geom_type == 'GEOMETRYCOLLECTION') {
+ echo('<br/><br/>'); echo __("Geometry"); echo($a + 1 . ':<br/>');
+ if (isset($gis_data[$a]['gis_type'])) {
+ $type = $gis_data[$a]['gis_type'];
+ } else {
+ $type = $gis_types[0];
+ }
+ echo('<select name="gis_data[' . $a . '][gis_type]" class="gis_type">');
+ foreach (array_slice($gis_types, 0, 6) as $gis_type) {
+ echo('<option value="' . $gis_type . '"');
+ if ($type == $gis_type) {
+ echo(' selected="selected"');
+ }
+ echo('>' . $gis_type . '</option>');
+ }
+ echo('</select>');
+ echo('<input type="submit" name="gis_data[' . $a . '][go]" class="go" value="'); echo __("Go"); echo('">');
+ } else {
+ $type = $geom_type;
+ }
+
+ if ($type == 'POINT') {
+ echo('<br/>'); echo __("Point"); echo(' :');
+?> <label for="x"><?php echo __("X"); ?></label>
+ <input name="gis_data[<?php echo($a); ?>][POINT][x]" type="text" value="<?php echo(isset($gis_data[$a]['POINT']['x']) ? htmlspecialchars($gis_data[$a]['POINT']['x']) : ''); ?>" />
+ <label for="y"><?php echo __("Y"); ?></label>
+ <input name="gis_data[<?php echo($a); ?>][POINT][y]" type="text" value="<?php echo(isset($gis_data[$a]['POINT']['y']) ? htmlspecialchars($gis_data[$a]['POINT']['y']) : ''); ?>" />
+<?php
+ } elseif ($type == 'MULTIPOINT' || $type == 'LINESTRING') {
+
+ $no_of_points = isset($gis_data[$a][$type]['no_of_points']) ? $gis_data[$a][$type]['no_of_points'] : 1;
+ if ($type == 'LINESTRING' && $no_of_points < 2) {
+ $no_of_points = 2;
+ }
+ if ($type == 'MULTIPOINT' && $no_of_points < 1) {
+ $no_of_points = 1;
+ }
+
+ if (isset($gis_data[$a][$type]['add_point'])) {
+ $no_of_points++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][no_of_points]" value="' . $no_of_points . '">');
+
+ for ($i = 0; $i < $no_of_points; $i++) {
+ echo('<br/>'); echo __("Point"); echo($i + 1 . ':');
+?> <label for="x"><?php echo __("X"); ?></label>
+ <input type="text" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][<?php echo($i); ?>][x]" value="<?php echo(isset($gis_data[$a][$type][$i]['x']) ? htmlspecialchars($gis_data[$a][$type][$i]['x']) : ''); ?>" />
+ <label for="y"><?php echo __("Y"); ?></label>
+ <input type="text" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][<?php echo($i); ?>][y]" value="<?php echo(isset($gis_data[$a][$type][$i]['y']) ? htmlspecialchars($gis_data[$a][$type][$i]['y']) : ''); ?>" />
+<?php
+ }
+?>
+ <input type="submit" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][add_point]" class="add addPoint" value="<?php echo __("Add a point"); ?>">
+<?php
+ } elseif ($type == 'MULTILINESTRING' || $type == 'POLYGON') {
+
+ $no_of_lines = isset($gis_data[$a][$type]['no_of_lines']) ? $gis_data[$a][$type]['no_of_lines'] : 1;
+ if ($no_of_lines < 1) {
+ $no_of_lines = 1;
+ }
+ if (isset($gis_data[$a][$type]['add_line'])) {
+ $no_of_lines++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][no_of_lines]" value="' . $no_of_lines . '">');
+
+ for ($i = 0; $i < $no_of_lines; $i++) {
+ echo('<br/>');
+ if ($type == 'MULTILINESTRING') {
+ echo __("Linestring"); echo($i + 1 . ':');
+ } else {
+ if ($i == 0) {
+ echo __("Outer Ring:");
+ } else {
+ echo __("Inner Ring"); echo($i . ':');
+ }
+ }
+
+ $no_of_points = isset($gis_data[$a][$type][$i]['no_of_points']) ? $gis_data[$a][$type][$i]['no_of_points'] : 2;
+ if ($type == 'MULTILINESTRING' && $no_of_points < 2) {
+ $no_of_points = 2;
+ }
+ if ($type == 'POLYGON' && $no_of_points < 4) {
+ $no_of_points = 4;
+ }
+ if (isset($gis_data[$a][$type][$i]['add_point'])) {
+ $no_of_points++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][' . $i . '][no_of_points]" value="' . $no_of_points . '">');
+
+ for ($j = 0; $j < $no_of_points; $j++) {
+ echo('<br/>'); echo __("Point"); echo($j + 1 . ':');
+?> <label for="x"><?php echo __("X"); ?></label>
+ <input type="text" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][<?php echo($i); ?>][<?php echo($j); ?>][x]" value="<?php echo(isset($gis_data[$a][$type][$i][$j]['x']) ? htmlspecialchars($gis_data[$a][$type][$i][$j]['x']) : ''); ?>" />
+ <label for="y"><?php echo __("Y"); ?></label>
+ <input type="text" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][<?php echo($i); ?>][<?php echo($j); ?>][y]" value="<?php echo(isset($gis_data[$a][$type][$i][$j]['x']) ? htmlspecialchars($gis_data[$a][$type][$i][$j]['y']) : ''); ?>" />
+<?php }
+?> <input type="submit" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][<?php echo($i); ?>][add_point]" class="add addPoint" value="<?php echo __("Add a point"); ?>">
+<?php }
+ $caption = ($type == 'MULTILINESTRING') ? __('Add a linestring') : __('Add an inner ring');
+?> <br/><input type="submit" name="gis_data[<?php echo($a); ?>][<?php echo($type); ?>][add_line]" class="add addLine" value="<?php echo($caption); ?>">
+<?php
+ } elseif ($type == 'MULTIPOLYGON') {
+ $no_of_polygons = isset($gis_data[$a][$type]['no_of_polygons']) ? $gis_data[$a][$type]['no_of_polygons'] : 1;
+ if ($no_of_polygons < 1) {
+ $no_of_polygons = 1;
+ }
+ if (isset($gis_data[$a][$type]['add_polygon'])) {
+ $no_of_polygons++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][no_of_polygons]" value="' . $no_of_polygons . '">');
+
+ for ($k = 0; $k < $no_of_polygons; $k++) {
+ echo('<br/>'); echo __("Polygon"); echo($k + 1 . ':');
+ $no_of_lines = isset($gis_data[$a][$type][$k]['no_of_lines']) ? $gis_data[$a][$type][$k]['no_of_lines'] : 1;
+ if ($no_of_lines < 1) {
+ $no_of_lines = 1;
+ }
+ if (isset($gis_data[$a][$type][$k]['add_line'])) {
+ $no_of_lines++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][' . $k . '][no_of_lines]" value="' . $no_of_lines . '">');
+
+ for ($i = 0; $i < $no_of_lines; $i++) {
+ echo('<br/><br/>');
+ if ($i == 0) {
+ echo __("Outer Ring:");
+ } else {
+ echo __("Inner Ring"); echo($i . ':');
+ }
+
+ $no_of_points = isset($gis_data[$a][$type][$k][$i]['no_of_points']) ? $gis_data[$a][$type][$k][$i]['no_of_points'] : 4;
+ if ($no_of_points < 4) {
+ $no_of_points = 4;
+ }
+ if (isset($gis_data[$a][$type][$k][$i]['add_point'])) {
+ $no_of_points++;
+ }
+ echo('<input type="hidden" name="gis_data[' . $a . '][' . $type . '][' . $k . '][' . $i . '][no_of_points]" value="' . $no_of_points . '">');
+
+ for ($j = 0; $j < $no_of_points; $j++) {
+ echo('<br/>'); echo __("Point"); echo($j + 1 . ':');
+?> <label for="x"><?php echo __("X"); ?></label>
+ <input type="text" name="<?php echo("gis_data[" . $a . "][" . $type . "][" . $k . "][" . $i . "][" . $j . "][x]"); ?>" value="<?php echo(isset($gis_data[$a][$type][$k][$i][$j]['x']) ? htmlspecialchars($gis_data[$a][$type][$k][$i][$j]['x']) : ''); ?>" />
+ <label for="y"><?php echo __("Y"); ?></label>
+ <input type="text" name="<?php echo("gis_data[" . $a . "][" . $type . "][" . $k . "][" . $i . "][" . $j . "][y]"); ?>" value="<?php echo(isset($gis_data[$a][$type][$k][$i][$j]['y']) ? htmlspecialchars($gis_data[$a][$type][$k][$i][$j]['y']) : ''); ?>" />
+<?php }
+?> <input type="submit" name="<?php echo("gis_data[" . $a . "][" . $type . "][" . $k . "][" . $i . "][add_point]"); ?>" class="add addPoint" value="<?php echo __("Add a point"); ?>">
+<?php }
+?> <br/><input type="submit" name="<?php echo("gis_data[" . $a . "][" . $type . "][" . $k . "][add_line]"); ?>" class="add addLine" value="<?php echo __('Add an inner ring') ?>"><br/>
+<?php }
+?> <br/><input type="submit" name="<?php echo("gis_data[" . $a . "][" . $type . "][add_polygon]"); ?>" class="add addPolygon" value="<?php echo __('Add a polygon') ?>">
+<?php }
+ }
+ if ($geom_type == 'GEOMETRYCOLLECTION') {
+?> <br/><br/><input type="submit" name="gis_data[GEOMETRYCOLLECTION][add_geom]" class="add addGeom" value="<?php echo __("Add geometry"); ?>" />
+<?php }
+?> </div>
+ <!-- End of data section -->
+
+ <br/><input type="submit" name="gis_data[save]" value="<?php echo __('Go') ?>">
+ <div id="gis_data_output">
+ <h3><?php echo __('Output'); ?></h3>
+ <p><?php echo __('Chose "GeomFromText" from the "Function" column and paste the below string into the "Value" field'); ?></p>
+ <textarea id="gis_data_textarea" cols="95" rows="5">
+<?php echo($result);
+?> </textarea>
+ </div>
+ </div>
+ </form>
+<?php
+
+// If the call is to get the whole content, get the content in the buffer and make and AJAX response.
+if(isset($_REQUEST['get_gis_editor']) && $_REQUEST['get_gis_editor'] == true) {
+ $extra_data['gis_editor'] = ob_get_contents();
+ PMA_ajaxResponse(NULL, ob_end_clean(), $extra_data);
+}
+?>
+</body>
+
+<?php
+/**
+ * Displays the footer
+ */
+require './libraries/footer.inc.php';
+
+?>
\ No newline at end of file
diff --git a/js/OpenStreetMap.js b/js/OpenStreetMap.js
new file mode 100644
index 0000000..aebfa65
--- /dev/null
+++ b/js/OpenStreetMap.js
@@ -0,0 +1,125 @@
+/**
+ * Namespace: Util.OSM
+ */
+OpenLayers.Util.OSM = {};
+
+/**
+ * Constant: MISSING_TILE_URL
+ * {String} URL of image to display for missing tiles
+ */
+OpenLayers.Util.OSM.MISSING_TILE_URL = "http://www.openstreetmap.org/openlayers/img/404.png";
+
+/**
+ * Property: originalOnImageLoadError
+ * {Function} Original onImageLoadError function.
+ */
+OpenLayers.Util.OSM.originalOnImageLoadError = OpenLayers.Util.onImageLoadError;
+
+/**
+ * Function: onImageLoadError
+ */
+OpenLayers.Util.onImageLoadError = function() {
+ if (this.src.match(/^http:\/\/[abc]\.[a-z]+\.openstreetmap\.org\//)) {
+ this.src = OpenLayers.Util.OSM.MISSING_TILE_URL;
+ } else if (this.src.match(/^http:\/\/[def]\.tah\.openstreetmap\.org\//)) {
+ // do nothing - this layer is transparent
+ } else {
+ OpenLayers.Util.OSM.originalOnImageLoadError;
+ }
+};
+
+/**
+ * Class: OpenLayers.Layer.OSM.Mapnik
+ *
+ * Inherits from:
+ * - <OpenLayers.Layer.OSM>
+ */
+OpenLayers.Layer.OSM.Mapnik = OpenLayers.Class(OpenLayers.Layer.OSM, {
+ /**
+ * Constructor: OpenLayers.Layer.OSM.Mapnik
+ *
+ * Parameters:
+ * name - {String}
+ * options - {Object} Hashtable of extra options to tag onto the layer
+ */
+ initialize: function(name, options) {
+ var url = [
+ "http://a.tile.openstreetmap.org/${z}/${x}/${y}.png",
+ "http://b.tile.openstreetmap.org/${z}/${x}/${y}.png",
+ "http://c.tile.openstreetmap.org/${z}/${x}/${y}.png"
+ ];
+ options = OpenLayers.Util.extend({
+ numZoomLevels: 19,
+ buffer: 0,
+ transitionEffect: "resize"
+ }, options);
+ var newArguments = [name, url, options];
+ OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
+ },
+
+ CLASS_NAME: "OpenLayers.Layer.OSM.Mapnik"
+});
+
+/**
+ * Class: OpenLayers.Layer.OSM.Osmarender
+ *
+ * Inherits from:
+ * - <OpenLayers.Layer.OSM>
+ */
+OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, {
+ /**
+ * Constructor: OpenLayers.Layer.OSM.Osmarender
+ *
+ * Parameters:
+ * name - {String}
+ * options - {Object} Hashtable of extra options to tag onto the layer
+ */
+ initialize: function(name, options) {
+ var url = [
+ "http://a.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png",
+ "http://b.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png",
+ "http://c.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png"
+ ];
+ options = OpenLayers.Util.extend({
+ numZoomLevels: 18,
+ buffer: 0,
+ transitionEffect: "resize"
+ }, options);
+ var newArguments = [name, url, options];
+ OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
+ },
+
+ CLASS_NAME: "OpenLayers.Layer.OSM.Osmarender"
+});
+
+/**
+ * Class: OpenLayers.Layer.OSM.CycleMap
+ *
+ * Inherits from:
+ * - <OpenLayers.Layer.OSM>
+ */
+OpenLayers.Layer.OSM.CycleMap = OpenLayers.Class(OpenLayers.Layer.OSM, {
+ /**
+ * Constructor: OpenLayers.Layer.OSM.CycleMap
+ *
+ * Parameters:
+ * name - {String}
+ * options - {Object} Hashtable of extra options to tag onto the layer
+ */
+ initialize: function(name, options) {
+ var url = [
+ "http://a.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
+ "http://b.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png",
+ "http://c.tile.opencyclemap.org/cycle/${z}/${x}/${y}.png"
+ ];
+ options = OpenLayers.Util.extend({
+ numZoomLevels: 19,
+ buffer: 0,
+ transitionEffect: "resize"
+ }, options);
+ var newArguments = [name, url, options];
+ OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
+ },
+
+ CLASS_NAME: "OpenLayers.Layer.OSM.CycleMap"
+});
diff --git a/js/gis_data_editor.js b/js/gis_data_editor.js
new file mode 100644
index 0000000..b2bab89
--- /dev/null
+++ b/js/gis_data_editor.js
@@ -0,0 +1,309 @@
+/**
+ * @fileoverview functions used in GIS data editor
+ *
+ * @requires jQuery
+ *
+ */
+
+/**
+ * Closes the GIS data editor and perform necessary clean up work.
+ */
+function closeGISEditor(){
+ $("#popup_background").fadeOut("fast");
+ $("#gis_editor").fadeOut("fast");
+ $("#gis_editor").html('');
+}
+
+/**
+ * Prepares the HTML recieved via AJAX.
+ */
+function prepareJSVersion() {
+ // Hide 'Go' buttons associated with the dropdowns
+ $('.go').hide();
+
+ // Change the text on the submit button
+ $("input[name='gis_data[save]']")
+ .attr('value', PMA_messages['strCopy'])
+ .insertAfter($('#gis_data_textarea'))
+ .before('<br><br>');
+
+ // Add close and cancel links
+ $('#gis_data_editor').prepend('<a class="close_gis_editor">' + PMA_messages['strClose'] + '</a>');
+ $('<a class="cancel_gis_editor"> ' + PMA_messages['strCancel'] + '</a>')
+ .insertAfter($("input[name='gis_data[save]']"));
+
+ // Remove the unnecessary text
+ $('div#gis_data_output p').remove();
+
+ // Remove 'add' buttons and add links
+ $('.add').each(function(e) {
+ var $button = $(this);
+ $button.addClass('addJs').removeClass('add');
+ var classes = $button.attr('class');
+ $button
+ .after('<a class="' + classes + '" name="' + $button.attr('name')
+ + '">+ ' + $button.attr('value') + '</a>')
+ .remove();
+ });
+}
+
+/**
+ * Returns the HTML for a data point.
+ *
+ * @param pointNumber point number
+ * @param prefix prefix of the name
+ * @returns the HTML for a data point
+ */
+function addDataPoint(pointNumber, prefix) {
+ return '<br>' + PMA_messages['strPoint'] + (pointNumber + 1) + ':'
+ + '<label for="x"> ' + PMA_messages['strX'] + ' </label>'
+ + '<input type="text" name="' + prefix + '[' + pointNumber + '][x]" value="">'
+ + '<label for="y"> ' + PMA_messages['strY'] + ' </label>'
+ + '<input type="text" name="' + prefix + '[' + pointNumber + '][y]" value="">';
+}
+
+/**
+ * Initialize the visualization in the GIS data editor.
+ */
+function initGISEditorVisualization() {
+ // Loads either SVG or OSM visualization based on the choice
+ selectVisualization();
+ // Adds necessary styles to the div that coontains the openStreetMap
+ styleOSM();
+ // Loads the SVG element and make a reference to it
+ loadSVG();
+ // Adds controllers for zooming and panning
+ addZoomPanControllers();
+ zoomAndPan();
+}
+
+/**
+ * Opens up the GIS data editor.
+ *
+ * @param value current value of the geometry field
+ * @param field field name
+ * @param type geometry type
+ * @param input_name name of the input field
+ * @param token token
+ */
+function openGISEditor(value, field, type, input_name, token) {
+ // Center the popup
+ var windowWidth = document.documentElement.clientWidth;
+ var windowHeight = document.documentElement.clientHeight;
+ var popupWidth = windowWidth * 0.9;
+ var popupHeight = windowHeight * 0.9;
+ var popupOffsetTop = windowHeight / 2 - popupHeight / 2;
+ var popupOffsetLeft = windowWidth / 2 - popupWidth / 2;
+ var $gis_editor = $("#gis_editor");
+ $gis_editor.css({"top": popupOffsetTop, "left": popupOffsetLeft, "width": popupWidth, "height": popupHeight});
+
+ $.post('gis_data_editor.php', {
+ 'field' : field,
+ 'value' : value,
+ 'type' : type,
+ 'input_name' : input_name,
+ 'get_gis_editor' : true,
+ 'token' : token
+ }, function(data) {
+ if(data.success == true) {
+ $gis_editor.html(data.gis_editor);
+ initGISEditorVisualization();
+ prepareJSVersion();
+ } else {
+ PMA_ajaxShowMessage(data.error);
+ }
+ }, 'json');
+
+ // Make it appear
+ $("#popup_background").css({"opacity":"0.7"});
+ $("#popup_background").fadeIn("fast");
+ $gis_editor.fadeIn("fast");
+}
+
+/**
+ * Prepare and insert the GIS data in Well Known Text format
+ * to the input field.
+ */
+function insertDataAndClose() {
+ var $form = $('form#gis_data_editor_form');
+ var input_name = $form.find("input[name='input_name']").val();
+
+ $.post('gis_data_editor.php', $form.serialize() + "&generate=true", function(data) {
+ if(data.success == true) {
+ $("input[name='" + input_name + "']").val(data.result);
+ } else {
+ PMA_ajaxShowMessage(data.error);
+ }
+ }, 'json');
+ closeGISEditor();
+}
+
+$(document).ready(function() {
+
+ // Remove the class that is added due to the URL being too long.
+ $('.open_gis_editor a').removeClass('formLinkSubmit');
+
+ /**
+ * Prepares and insert the GIS data to the input field on clicking 'copy'.
+ */
+ $("input[name='gis_data[save]']").live('click', function(event) {
+ event.preventDefault();
+ insertDataAndClose();
+ });
+
+ /**
+ * Prepares and insert the GIS data to the input field on pressing 'enter'.
+ */
+ $('#gis_editor').live('submit', function(event) {
+ event.preventDefault();
+ insertDataAndClose();
+ });
+
+ /**
+ * Trigger asynchronous calls on data change and update the output.
+ */
+ $('#gis_editor').find("input[type='text']").live('change', function() {
+ var $form = $('form#gis_data_editor_form');
+ $.post('gis_data_editor.php', $form.serialize() + "&generate=true", function(data) {
+ if(data.success == true) {
+ $('#gis_data_textarea').val(data.result);
+ $('#placeholder').empty().removeClass('hasSVG').html(data.visualization);
+ $('#openlayersmap').empty();
+ eval(data.openLayers);
+ initGISEditorVisualization();
+ } else {
+ PMA_ajaxShowMessage(data.error);
+ }
+ }, 'json');
+ });
+
+ /**
+ * Update the form on change of the GIS type.
+ */
+ $(".gis_type").live('change', function(event) {
+ var $gis_editor = $("#gis_editor");
+ var $form = $('form#gis_data_editor_form');
+
+ $.post('gis_data_editor.php', $form.serialize() + "&get_gis_editor=true", function(data) {
+ if(data.success == true) {
+ $gis_editor.html(data.gis_editor);
+ initGISEditorVisualization();
+ prepareJSVersion();
+ } else {
+ PMA_ajaxShowMessage(data.error);
+ }
+ }, 'json');
+ });
+
+ /**
+ * Handles closing of the GIS data editor.
+ */
+ $('.close_gis_editor, .cancel_gis_editor').live('click', function() {
+ closeGISEditor();
+ });
+
+ /**
+ * Handles adding data points
+ */
+ $('.addJs.addPoint').live('click', function() {
+ var $a = $(this);
+ var name = $a.attr('name');
+ // Eg. name = gis_data[0][MULTIPOINT][add_point] => prefix = gis_data[0][MULTIPOINT]
+ var prefix = name.substr(0, name.length - 11);
+ // Find the number of points
+ var $noOfPointsInput = $("input[name='" + prefix + "[no_of_points]" + "']");
+ var noOfPoints = parseInt($noOfPointsInput.attr('value'));
+ // Add the new data point
+ var html = addDataPoint(noOfPoints, prefix);
+ $a.before(html);
+ $noOfPointsInput.attr('value', noOfPoints + 1);
+ });
+
+ /**
+ * Handles adding linestrings and inner rings
+ */
+ $('.addLine.addJs').live('click', function() {
+ var $a = $(this);
+ var name = $a.attr('name');
+
+ // Eg. name = gis_data[0][MULTILINESTRING][add_line] => prefix = gis_data[0][MULTILINESTRING]
+ var prefix = name.substr(0, name.length - 10);
+ var type = prefix.slice(prefix.lastIndexOf('[') + 1, prefix.lastIndexOf(']'));
+
+ // Find the number of lines
+ var $noOfLinesInput = $("input[name='" + prefix + "[no_of_lines]" + "']");
+ var noOfLines = parseInt($noOfLinesInput.attr('value'));
+
+ // Add the new linesting of inner ring based on the type
+ var html = '<br>';
+ if (type == 'MULTILINESTRING') {
+ html += PMA_messages['strLineString'] + (noOfLines + 1) + ':';
+ var noOfPoints = 2;
+ } else {
+ html += PMA_messages['strInnerRing'] + noOfLines + ':';
+ var noOfPoints = 4;
+ }
+ html += '<input type="hidden" name="' + prefix + '[' + noOfLines + '][no_of_points]" value="' + noOfPoints + '">';
+ for (i = 0; i < noOfPoints; i++) {
+ html += addDataPoint(i, (prefix + '[' + noOfLines + ']'));
+ }
+ html += '<a class="addPoint addJs" name="' + prefix + '[' + noOfLines + '][add_point]">+ '
+ + PMA_messages['strAddPoint'] + '</a><br>';
+
+ $a.before(html);
+ $noOfLinesInput.attr('value', noOfLines + 1);
+ });
+
+ /**
+ * Handles adding polygons
+ */
+ $('.addJs.addPolygon').live('click', function() {
+ var $a = $(this);
+ var name = $a.attr('name');
+ // Eg. name = gis_data[0][MULTIPOLYGON][add_polygon] => prefix = gis_data[0][MULTIPOLYGON]
+ var prefix = name.substr(0, name.length - 13);
+ // Find the number of polygons
+ var $noOfPolygonsInput = $("input[name='" + prefix + "[no_of_polygons]" + "']");
+ var noOfPolygons = parseInt($noOfPolygonsInput.attr('value'));
+
+ // Add the new polygon
+ var html = PMA_messages['strPolygon'] + (noOfPolygons + 1) + ':<br>';
+ html += '<input type="hidden" name="' + prefix + '[' + noOfPolygons + '][no_of_lines]" value="1">';
+ + '<br>' + PMA_messages['strOuterRing'] + ':';
+ + '<input type="hidden" name="' + prefix + '[' + noOfPolygons + '][0][no_of_points]" value="4">';
+ for (i = 0; i < 4; i++) {
+ html += addDataPoint(i, (prefix + '[' + noOfPolygons + '][0]'));
+ }
+ html += '<a class="addPoint addJs" name="' + prefix + '[' + noOfPolygons + '][0][add_point]">+ '
+ + PMA_messages['strAddPoint'] + '</a><br>'
+ + '<a class="addLine addJs" name="' + prefix + '[' + noOfPolygons + '][add_line]">+ '
+ + PMA_messages['strAddInnerRing'] + '</a><br><br>';
+
+ $a.before(html);
+ $noOfPolygonsInput.attr('value', noOfPolygons + 1);
+ });
+
+ /**
+ * Handles adding geoms
+ */
+ $('.addJs.addGeom').live('click', function() {
+ var $a = $(this);
+ var prefix = 'gis_data[GEOMETRYCOLLECTION]';
+ // Find the number of geoms
+ var $noOfGeomsInput = $("input[name='" + prefix + "[geom_count]" + "']");
+ var noOfGeoms = parseInt($noOfGeomsInput.attr('value'));
+
+ var html1 = PMA_messages['strGeometry'] + (noOfGeoms + 1) + ':<br>';
+ var $geomType = $("select[name='gis_data[" + (noOfGeoms - 1) + "][gis_type]']").clone();
+ $geomType.attr('name', 'gis_data[' + noOfGeoms + '][gis_type]').val('POINT');
+ var html2 = '<br>' + PMA_messages['strPoint'] + ' :'
+ + '<label for="x"> ' + PMA_messages['strX'] + ' </label>'
+ + '<input type="text" name="gis_data[' + noOfGeoms + '][POINT][x]" value="">'
+ + '<label for="y"> ' + PMA_messages['strY'] + ' </label>'
+ + '<input type="text" name="gis_data[' + noOfGeoms + '][POINT][y]" value="">'
+ + '<br><br>';
+
+ $a.before(html1); $geomType.insertBefore($a); $a.before(html2);
+ $noOfGeomsInput.attr('value', noOfGeoms + 1);
+ });
+});
diff --git a/js/messages.php b/js/messages.php
index a8c7d10..10beb0a 100644
--- a/js/messages.php
+++ b/js/messages.php
@@ -280,6 +280,18 @@ $js_messages['strSameInputs'] = '<strong>' . __('Select two different columns')
/* For tbl_change.js */
$js_messages['strIgnore'] = __('Ignore');
+$js_messages['strCopy'] = __('Copy');
+$js_messages['strX'] = __('X');
+$js_messages['strY'] = __('Y');
+$js_messages['strPoint'] = __('Point');
+$js_messages['strLineString'] = __('Linestring');
+$js_messages['strPolygon'] = __('Polygon');
+$js_messages['strGeometry'] = __('Geometry');
+$js_messages['strInnerRing'] = __('Inner Ring');
+$js_messages['strOuterRing'] = __('Outer Ring');
+$js_messages['strAddPoint'] = __('Add a point');
+$js_messages['strAddInnerRing'] = __('Add an inner ring');
+$js_messages['strAddPolygon'] = __('Add a polygon');
/* For tbl_structure.js */
$js_messages['strAddColumns'] = __('Add columns');
diff --git a/js/sql.js b/js/sql.js
index f4a7475..99fd93c 100644
--- a/js/sql.js
+++ b/js/sql.js
@@ -334,10 +334,10 @@ $(document).ready(function() {
*/
var button_options = {};
// in the following function we need to use $(this)
- button_options[PMA_messages['strCancel']] = function() {$(this).parent().dialog('close').remove();}
+ button_options[PMA_messages['strCancel']] = function() {$(this).dialog('close').remove();}
var button_options_error = {};
- button_options_error[PMA_messages['strOK']] = function() {$(this).parent().dialog('close').remove();}
+ button_options_error[PMA_messages['strOK']] = function() {$(this).dialog('close').remove();}
var $form = $("#resultsForm");
var $msgbox = PMA_ajaxShowMessage();
@@ -351,6 +351,9 @@ $(document).ready(function() {
height: 230,
width: 900,
open: PMA_verifyTypeOfAllColumns,
+ close: function(event, ui) {
+ $('#change_row_dialog').remove();
+ },
buttons : button_options_error
})// end dialog options
} else {
@@ -361,6 +364,9 @@ $(document).ready(function() {
height: 600,
width: 900,
open: PMA_verifyTypeOfAllColumns,
+ close: function(event, ui) {
+ $('#change_row_dialog').remove();
+ },
buttons : button_options
})
//Remove the top menu container from the dialog
diff --git a/js/tbl_change.js b/js/tbl_change.js
index 17677b9..25bc120 100644
--- a/js/tbl_change.js
+++ b/js/tbl_change.js
@@ -218,11 +218,38 @@ function verificationsAfterFieldChange(urlField, multi_edit, theType)
* Ajax handlers for Change Table page
*
* Actions Ajaxified here:
- * Submit Data to be inserted into the table
+ * Submit Data to be inserted into the table.
* Restart insertion with 'N' rows.
*/
$(document).ready(function() {
+ $('.open_gis_editor').live('click', function(event) {
+ event.preventDefault();
+
+ var $span = $(this);
+ // Current value
+ var value = $span.parent('td').children("input[type='text']").val();
+ // Field name
+ var field = $span.parents('tr').children('td:first').find("input[type='hidden']").val();
+ // Column type
+ var type = $span.parents('tr').find('span.column_type').text();
+ // Names of input field and null checkbox
+ var input_name = $span.parent('td').children("input[type='text']").attr('name');
+ //Token
+ var token = $("input[name='token']").val();
+
+ openGISEditor(value, field, type, input_name, token);
+ });
+
+ /**
+ * Uncheck the null checkbox as geometry data is placed on the input field
+ */
+ $("input[name='gis_data[save]']").live('click', function(event) {
+ var input_name = $('form#gis_data_editor_form').find("input[name='input_name']").val();
+ var $null_checkbox = $("input[name='" + input_name + "']").parents('tr').find('.checkbox_null');
+ $null_checkbox.attr('checked', false);
+ });
+
// these were hidden via the "hide" class
$('.foreign_values_anchor').show();
diff --git a/js/tbl_gis_visualization.js b/js/tbl_gis_visualization.js
index 978cd69..0a84189 100644
--- a/js/tbl_gis_visualization.js
+++ b/js/tbl_gis_visualization.js
@@ -8,7 +8,9 @@
*/
var x = 0;
+var default_x = 0;
var y = 0;
+var default_y = 0;
var scale = 1;
var svg;
@@ -51,56 +53,52 @@ function zoomAndPan()
}
/**
- * Ajax handlers for GIS visualization page
- *
- * Actions Ajaxified here:
- *
- * Zooming in and zooming out on mousewheel movement.
- * Panning the visualization on dragging.
- * Zooming in on double clicking.
- * Zooming out on clicking the zoom out button.
- * Panning on clicking the arrow buttons.
- * Displaying tooltips for GIS objects.
+ * Initially loads either SVG or OSM visualization based on the choice.
*/
-$(document).ready(function() {
- var $placeholder = $('#placeholder');
- var $openlayersmap = $('#openlayersmap');
-
- if ($('#choice').prop('checked') != true) {
- $openlayersmap.hide();
+function selectVisualization() {
+ if ($('#choice').prop('checked') != true) {
+ $('#openlayersmap').hide();
} else {
- $placeholder.hide();
+ $('#placeholder').hide();
}
+ $('.choice').show();
+}
+/**
+ * Adds necessary styles to the div that coontains the openStreetMap.
+ */
+function styleOSM() {
+ var $placeholder = $('#placeholder');
var cssObj = {
'border' : '1px solid #aaa',
'width' : $placeholder.width(),
'height' : $placeholder.height(),
'float' : 'right'
};
- $openlayersmap.css(cssObj);
- drawOpenLayers();
+ $('#openlayersmap').css(cssObj);
+}
- $('.choice').show();
- $('#choice').bind('click', function() {
- if ($(this).prop('checked') == false) {
- $placeholder.show();
- $openlayersmap.hide();
- } else {
- $placeholder.hide();
- $openlayersmap.show();
- }
- });
+/**
+ * Loads the SVG element and make a reference to it.
+ */
+function loadSVG() {
+ var $placeholder = $('#placeholder');
- $('#placeholder').svg({
+ $placeholder.svg({
onLoad: function(svg_ref) {
svg = svg_ref;
}
});
- // Removes the second SVG element unnecessarily added due to the above command.
- $('#placeholder').find('svg:nth-child(2)').remove();
+ // Removes the second SVG element unnecessarily added due to the above command
+ $placeholder.find('svg:nth-child(2)').remove();
+}
+/**
+ * Adds controllers for zooming and panning.
+ */
+function addZoomPanControllers() {
+ var $placeholder = $('#placeholder');
if ($("#placeholder svg").length > 0) {
var pmaThemeImage = $('#pmaThemeImage').attr('value');
// add panning arrows
@@ -113,7 +111,81 @@ $(document).ready(function() {
$('<img class="button" id="zoom_world" src="' + pmaThemeImage + 'zoom-world-mini.png">').appendTo($placeholder);
$('<img class="button" id="zoom_out" src="' + pmaThemeImage + 'zoom-minus-mini.png">').appendTo($placeholder);
}
+}
+/**
+ * Resizes the GIS visualization to fit into the space available.
+ */
+function resizeGISVisualization() {
+ var $placeholder = $('#placeholder');
+
+ // Hide inputs for width and height
+ $("input[name='visualizationSettings[width]']").parents('tr').remove();
+ $("input[name='visualizationSettings[height]']").parents('tr').remove();
+
+ var old_width = $placeholder.width();
+ var extraPadding = 100;
+ var leftWidth = $('.gis_table').width();
+ var windowWidth = document.documentElement.clientWidth;
+ var visWidth = windowWidth - extraPadding - leftWidth;
+
+ // Assign new value for width
+ $placeholder.width(visWidth);
+ $('svg').attr('width', visWidth);
+
+ // Assign the offset created due to resizing to default_x and center the svg.
+ default_x = (visWidth - old_width) / 2;
+ x = default_x;
+}
+
+/**
+ * Initialize the GIS visualization.
+ */
+function initGISVisualization() {
+ // Loads either SVG or OSM visualization based on the choice
+ selectVisualization();
+ // Resizes the GIS visualization to fit into the space available
+ resizeGISVisualization();
+ // Adds necessary styles to the div that coontains the openStreetMap
+ styleOSM();
+ // Draws openStreetMap with openLayers
+ drawOpenLayers();
+ // Loads the SVG element and make a reference to it
+ loadSVG();
+ // Adds controllers for zooming and panning
+ addZoomPanControllers();
+ zoomAndPan();
+}
+
+/**
+ * Ajax handlers for GIS visualization page
+ *
+ * Actions Ajaxified here:
+ *
+ * Zooming in and zooming out on mousewheel movement.
+ * Panning the visualization on dragging.
+ * Zooming in on double clicking.
+ * Zooming out on clicking the zoom out button.
+ * Panning on clicking the arrow buttons.
+ * Displaying tooltips for GIS objects.
+ */
+$(document).ready(function() {
+
+ // If we are in GIS visualization, initialize it
+ if ($('.gis_table').length > 0) {
+ initGISVisualization();
+ }
+
+ $('#choice').live('click', function() {
+ if ($(this).prop('checked') == false) {
+ $('#placeholder').show();
+ $('#openlayersmap').hide();
+ } else {
+ $('#placeholder').hide();
+ $('#openlayersmap').show();
+ }
+ });
+
$('#placeholder').live('mousewheel', function(event, delta) {
if (delta > 0) {
//zoom in
@@ -135,13 +207,13 @@ $(document).ready(function() {
var dragX = 0; var dragY = 0;
$('svg').live('dragstart', function(event, dd) {
- $placeholder.addClass('placeholderDrag');
+ $('#placeholder').addClass('placeholderDrag');
dragX = Math.round(dd.offsetX);
dragY = Math.round(dd.offsetY);
});
$('svg').live('mouseup', function(event) {
- $placeholder.removeClass('placeholderDrag');
+ $('#placeholder').removeClass('placeholderDrag');
});
$('svg').live('drag', function(event, dd) {
@@ -178,8 +250,8 @@ $(document).ready(function() {
$('#zoom_world').live('click', function(e) {
e.preventDefault();
scale = 1;
- x = 0;
- y = 0;
+ x = default_x;
+ y = default_y;
zoomAndPan();
});
@@ -225,7 +297,7 @@ $(document).ready(function() {
*/
$('.polygon, .multipolygon, .point, .multipoint, .linestring, .multilinestring, '
+ '.geometrycollection').live('mousemove', function(event) {
- contents = $(this).attr('name');
+ contents = $.trim($(this).attr('name'));
$("#tooltip").remove();
if (contents != '') {
$('<div id="tooltip">' + contents + '</div>').css({
diff --git a/js/tbl_select.js b/js/tbl_select.js
index af2242a..4f6ddf0 100644
--- a/js/tbl_select.js
+++ b/js/tbl_select.js
@@ -68,7 +68,7 @@ $(document).ready(function() {
$("#sqlqueryresults").html(response);
$("#sqlqueryresults").trigger('appendAnchor');
$('#tbl_search_form')
- // work around for bug #3168569 - Issue on toggling the "Hide search criteria" in chrome.
+ // workaround for bug #3168569 - Issue on toggling the "Hide search criteria" in chrome.
.slideToggle()
.hide();
$('#togglesearchformlink')
@@ -87,4 +87,91 @@ $(document).ready(function() {
});
}) // end $.post()
})
+
+ // Following section is related to the 'function based search' for geometry data types.
+ // Initialy hide all the open_gis_editor spans
+ $('.open_search_gis_editor').hide();
+
+ $('.geom_func').bind('change', function() {
+ var $geomFuncSelector = $(this);
+
+ var binaryFunctions = [
+ 'Contains',
+ 'Crosses',
+ 'Disjoint',
+ 'Equals',
+ 'Intersects',
+ 'Overlaps',
+ 'Touches',
+ 'Within',
+ 'MBRContains',
+ 'MBRDisjoint',
+ 'MBREquals',
+ 'MBRIntersects',
+ 'MBROverlaps',
+ 'MBRTouches',
+ 'MBRWithin',
+ 'ST_Contains',
+ 'ST_Crosses',
+ 'ST_Disjoint',
+ 'ST_Equals',
+ 'ST_Intersects',
+ 'ST_Overlaps',
+ 'ST_Touches',
+ 'ST_Within',
+ ];
+
+ var tempArray = [
+ 'Envelope',
+ 'EndPoint',
+ 'StartPoint',
+ 'ExteriorRing',
+ 'Centroid',
+ 'PointOnSurface'
+ ];
+ var outputGeomFunctions = binaryFunctions.concat(tempArray);
+
+ // If the chosen function takes two geomerty objects as parameters
+ var $operator = $geomFuncSelector.parents('tr').find('td:nth-child(5)').find('select');
+ if ($.inArray($geomFuncSelector.val(), binaryFunctions) >= 0){
+ $operator.attr('readonly', true);
+ } else {
+ $operator.attr('readonly', false);
+ }
+
+ // if the chosen function's output is a geometry, enable GIS editor
+ var $editorSpan = $geomFuncSelector.parents('tr').find('.open_search_gis_editor');
+ if ($.inArray($geomFuncSelector.val(), outputGeomFunctions) >= 0){
+ $editorSpan.show();
+ } else {
+ $editorSpan.hide();
+ }
+
+ });
+
+ $('.open_search_gis_editor').live('click', function(event) {
+ event.preventDefault();
+
+ var $span = $(this);
+ // Current value
+ var value = $span.parent('td').children("input[type='text']").val();
+ // Field name
+ var field = 'Parameter';
+ // Column type
+ var geom_func = $span.parents('tr').find('.geom_func').val();
+ if (geom_func == 'Envelope') {
+ var type = 'polygon';
+ } else if (geom_func == 'ExteriorRing') {
+ var type = 'linestring';
+ } else {
+ var type = 'point';
+ }
+ // Names of input field and null checkbox
+ var input_name = $span.parent('td').children("input[type='text']").attr('name');
+ //Token
+ var token = $("input[name='token']").val();
+
+ openGISEditor(value, field, type, input_name, token);
+ });
+
}, 'top.frame_content'); // end $(document).ready()
diff --git a/libraries/bfShapeFiles/ShapeFile.lib.php b/libraries/bfShapeFiles/ShapeFile.lib.php
new file mode 100644
index 0000000..0680708
--- /dev/null
+++ b/libraries/bfShapeFiles/ShapeFile.lib.php
@@ -0,0 +1,649 @@
+<?php
+ function loadData($type, $data) {
+ if (!$data) return $data;
+ $tmp = unpack($type, $data);
+ return current($tmp);
+ }
+
+ function swap($binValue) {
+ $result = $binValue{strlen($binValue) - 1};
+ for($i = strlen($binValue) - 2; $i >= 0 ; $i--) {
+ $result .= $binValue{$i};
+ }
+
+ return $result;
+ }
+
+ function packDouble($value, $mode = 'LE') {
+ $value = (double)$value;
+ $bin = pack("d", $value);
+
+ //We test if the conversion of an integer (1) is done as LE or BE by default
+ switch (pack ('L', 1)) {
+ case pack ('V', 1): //Little Endian
+ $result = ($mode == 'LE') ? $bin : swap($bin);
+ break;
+ case pack ('N', 1): //Big Endian
+ $result = ($mode == 'BE') ? $bin : swap($bin);
+ break;
+ default: //Some other thing, we just return false
+ $result = FALSE;
+ }
+
+ return $result;
+ }
+
+ class ShapeFile {
+ var $FileName;
+
+ var $SHPFile;
+ var $SHXFile;
+ var $DBFFile;
+
+ var $DBFHeader;
+
+ var $lastError = "";
+
+ var $boundingBox = array("xmin" => 0.0, "ymin" => 0.0, "xmax" => 0.0, "ymax" => 0.0);
+ var $fileLength = 0;
+ var $shapeType = 0;
+
+ var $records;
+
+ function ShapeFile($shapeType, $boundingBox = array("xmin" => 0.0, "ymin" => 0.0, "xmax" => 0.0, "ymax" => 0.0), $FileName = NULL) {
+ $this->shapeType = $shapeType;
+ $this->boundingBox = $boundingBox;
+ $this->FileName = $FileName;
+ $this->fileLength = 50;
+ }
+
+ function loadFromFile($FileName) {
+ $this->FileName = $FileName;
+
+ if (($this->_openSHPFile()) && ($this->_openDBFFile())) {
+ $this->_loadHeaders();
+ $this->_loadRecords();
+ $this->_closeSHPFile();
+ $this->_closeDBFFile();
+ } else {
+ return false;
+ }
+ }
+
+ function saveToFile($FileName = NULL) {
+ if ($FileName != NULL) $this->FileName = $FileName;
+
+ if (($this->_openSHPFile(TRUE)) && ($this->_openSHXFile(TRUE)) && ($this->_openDBFFile(TRUE))) {
+ $this->_saveHeaders();
+ $this->_saveRecords();
+ $this->_closeSHPFile();
+ $this->_closeSHXFile();
+ $this->_closeDBFFile();
+ } else {
+ return false;
+ }
+ }
+
+ function addRecord($record) {
+ if ((isset($this->DBFHeader)) && (is_array($this->DBFHeader))) {
+ $record->updateDBFInfo($this->DBFHeader);
+ }
+
+ $this->fileLength += ($record->getContentLength() + 4);
+ $this->records[] = $record;
+ $this->records[count($this->records) - 1]->recordNumber = count($this->records);
+
+ return (count($this->records) - 1);
+ }
+
+ function deleteRecord($index) {
+ if (isset($this->records[$index])) {
+ $this->fileLength -= ($this->records[$index]->getContentLength() + 4);
+ for ($i = $index; $i < (count($this->records) - 1); $i++) {
+ $this->records[$i] = $this->records[$i + 1];
+ }
+ unset($this->records[count($this->records) - 1]);
+ $this->_deleteRecordFromDBF($index);
+ }
+ }
+
+ function getDBFHeader() {
+ return $this->DBFHeader;
+ }
+
+ function setDBFHeader($header) {
+ $this->DBFHeader = $header;
+
+ for ($i = 0; $i < count($this->records); $i++) {
+ $this->records[$i]->updateDBFInfo($header);
+ }
+ }
+
+ function getIndexFromDBFData($field, $value) {
+ $result = -1;
+ for ($i = 0; $i < (count($this->records) - 1); $i++) {
+ if (isset($this->records[$i]->DBFData[$field]) && (strtoupper($this->records[$i]->DBFData[$field]) == strtoupper($value))) {
+ $result = $i;
+ }
+ }
+
+ return $result;
+ }
+
+ function _loadDBFHeader() {
+ $DBFFile = fopen(str_replace('.*', '.dbf', $this->FileName), 'r');
+
+ $result = array();
+ $buff32 = array();
+ $i = 1;
+ $inHeader = true;
+
+ while ($inHeader) {
+ if (!feof($DBFFile)) {
+ $buff32 = fread($DBFFile, 32);
+ if ($i > 1) {
+ if (substr($buff32, 0, 1) == chr(13)) {
+ $inHeader = false;
+ } else {
+ $pos = strpos(substr($buff32, 0, 10), chr(0));
+ $pos = ($pos == 0 ? 10 : $pos);
+
+ $fieldName = substr($buff32, 0, $pos);
+ $fieldType = substr($buff32, 11, 1);
+ $fieldLen = ord(substr($buff32, 16, 1));
+ $fieldDec = ord(substr($buff32, 17, 1));
+
+ array_push($result, array($fieldName, $fieldType, $fieldLen, $fieldDec));
+ }
+ }
+ $i++;
+ } else {
+ $inHeader = false;
+ }
+ }
+
+ fclose($DBFFile);
+ return($result);
+ }
+
+ function _deleteRecordFromDBF($index) {
+ if (@dbase_delete_record($this->DBFFile, $index)) {
+ @dbase_pack($this->DBFFile);
+ }
+ }
+
+ function _loadHeaders() {
+ fseek($this->SHPFile, 24, SEEK_SET);
+ $this->fileLength = loadData("N", fread($this->SHPFile, 4));
+
+ fseek($this->SHPFile, 32, SEEK_SET);
+ $this->shapeType = loadData("V", fread($this->SHPFile, 4));
+
+ $this->boundingBox = array();
+ $this->boundingBox["xmin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->boundingBox["ymin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->boundingBox["xmax"] = loadData("d", fread($this->SHPFile, 8));
+ $this->boundingBox["ymax"] = loadData("d", fread($this->SHPFile, 8));
+
+ $this->DBFHeader = $this->_loadDBFHeader();
+ }
+
+ function _saveHeaders() {
+ fwrite($this->SHPFile, pack("NNNNNN", 9994, 0, 0, 0, 0, 0));
+ fwrite($this->SHPFile, pack("N", $this->fileLength));
+ fwrite($this->SHPFile, pack("V", 1000));
+ fwrite($this->SHPFile, pack("V", $this->shapeType));
+ fwrite($this->SHPFile, packDouble($this->boundingBox['xmin']));
+ fwrite($this->SHPFile, packDouble($this->boundingBox['ymin']));
+ fwrite($this->SHPFile, packDouble($this->boundingBox['xmax']));
+ fwrite($this->SHPFile, packDouble($this->boundingBox['ymax']));
+ fwrite($this->SHPFile, pack("dddd", 0, 0, 0, 0));
+
+ fwrite($this->SHXFile, pack("NNNNNN", 9994, 0, 0, 0, 0, 0));
+ fwrite($this->SHXFile, pack("N", 50 + 4*count($this->records)));
+ fwrite($this->SHXFile, pack("V", 1000));
+ fwrite($this->SHXFile, pack("V", $this->shapeType));
+ fwrite($this->SHXFile, packDouble($this->boundingBox['xmin']));
+ fwrite($this->SHXFile, packDouble($this->boundingBox['ymin']));
+ fwrite($this->SHXFile, packDouble($this->boundingBox['xmax']));
+ fwrite($this->SHXFile, packDouble($this->boundingBox['ymax']));
+ fwrite($this->SHXFile, pack("dddd", 0, 0, 0, 0));
+ }
+
+ function _loadRecords() {
+ fseek($this->SHPFile, 100);
+ while (!feof($this->SHPFile)) {
+ $bByte = ftell($this->SHPFile);
+ $record = new ShapeRecord(-1);
+ $record->loadFromFile($this->SHPFile, $this->DBFFile);
+ $eByte = ftell($this->SHPFile);
+ if (($eByte <= $bByte) || ($record->lastError != "")) {
+ return false;
+ }
+
+ $this->records[] = $record;
+ }
+ }
+
+ function _saveRecords() {
+ if (file_exists(str_replace('.*', '.dbf', $this->FileName))) {
+ @unlink(str_replace('.*', '.dbf', $this->FileName));
+ }
+ if (!($this->DBFFile = @dbase_create(str_replace('.*', '.dbf', $this->FileName), $this->DBFHeader))) {
+ return $this->setError(sprintf("It wasn't possible to create the DBase file '%s'", str_replace('.*', '.dbf', $this->FileName)));
+ }
+
+ $offset = 50;
+ if (is_array($this->records) && (count($this->records) > 0)) {
+ reset($this->records);
+ while (list($index, $record) = each($this->records)) {
+ //Save the record to the .shp file
+ $record->saveToFile($this->SHPFile, $this->DBFFile, $index + 1);
+
+ //Save the record to the .shx file
+ fwrite($this->SHXFile, pack("N", $offset));
+ fwrite($this->SHXFile, pack("N", $record->getContentLength()));
+ $offset += (4 + $record->getContentLength());
+ }
+ }
+ @dbase_pack($this->DBFFile);
+ }
+
+ function _openSHPFile($toWrite = false) {
+ $this->SHPFile = @fopen(str_replace('.*', '.shp', $this->FileName), ($toWrite ? "wb+" : "rb"));
+ if (!$this->SHPFile) {
+ return $this->setError(sprintf("It wasn't possible to open the Shape file '%s'", str_replace('.*', '.shp', $this->FileName)));
+ }
+
+ return TRUE;
+ }
+
+ function _closeSHPFile() {
+ if ($this->SHPFile) {
+ fclose($this->SHPFile);
+ $this->SHPFile = NULL;
+ }
+ }
+
+ function _openSHXFile($toWrite = false) {
+ $this->SHXFile = @fopen(str_replace('.*', '.shx', $this->FileName), ($toWrite ? "wb+" : "rb"));
+ if (!$this->SHXFile) {
+ return $this->setError(sprintf("It wasn't possible to open the Index file '%s'", str_replace('.*', '.shx', $this->FileName)));
+ }
+
+ return TRUE;
+ }
+
+ function _closeSHXFile() {
+ if ($this->SHXFile) {
+ fclose($this->SHXFile);
+ $this->SHXFile = NULL;
+ }
+ }
+
+ function _openDBFFile($toWrite = false) {
+ $checkFunction = $toWrite ? "is_writable" : "is_readable";
+ if (($toWrite) && (!file_exists(str_replace('.*', '.dbf', $this->FileName)))) {
+ if (!@dbase_create(str_replace('.*', '.dbf', $this->FileName), $this->DBFHeader)) {
+ return $this->setError(sprintf("It wasn't possible to create the DBase file '%s'", str_replace('.*', '.dbf', $this->FileName)));
+ }
+ }
+ if ($checkFunction(str_replace('.*', '.dbf', $this->FileName))) {
+ $this->DBFFile = dbase_open(str_replace('.*', '.dbf', $this->FileName), ($toWrite ? 2 : 0));
+ if (!$this->DBFFile) {
+ return $this->setError(sprintf("It wasn't possible to open the DBase file '%s'", str_replace('.*', '.dbf', $this->FileName)));
+ }
+ } else {
+ return $this->setError(sprintf("It wasn't possible to find the DBase file '%s'", str_replace('.*', '.dbf', $this->FileName)));
+ }
+ return TRUE;
+ }
+
+ function _closeDBFFile() {
+ if ($this->DBFFile) {
+ dbase_close($this->DBFFile);
+ $this->DBFFile = NULL;
+ }
+ }
+
+ function setError($error) {
+ $this->lastError = $error;
+ return false;
+ }
+ }
+
+ class ShapeRecord {
+ var $SHPFile = NULL;
+ var $DBFFile = NULL;
+
+ var $recordNumber = NULL;
+ var $shapeType = NULL;
+
+ var $lastError = "";
+
+ var $SHPData = array();
+ var $DBFData = array();
+
+ function ShapeRecord($shapeType) {
+ $this->shapeType = $shapeType;
+ }
+
+ function loadFromFile(&$SHPFile, &$DBFFile) {
+ $this->SHPFile = $SHPFile;
+ $this->DBFFile = $DBFFile;
+ $this->_loadHeaders();
+
+ switch ($this->shapeType) {
+ case 0:
+ $this->_loadNullRecord();
+ break;
+ case 1:
+ $this->_loadPointRecord();
+ break;
+ case 3:
+ $this->_loadPolyLineRecord();
+ break;
+ case 5:
+ $this->_loadPolygonRecord();
+ break;
+ case 8:
+ $this->_loadMultiPointRecord();
+ break;
+ default:
+ $this->setError(sprintf("The Shape Type '%s' is not supported.", $this->shapeType));
+ break;
+ }
+ $this->_loadDBFData();
+ }
+
+ function saveToFile(&$SHPFile, &$DBFFile, $recordNumber) {
+ $this->SHPFile = $SHPFile;
+ $this->DBFFile = $DBFFile;
+ $this->recordNumber = $recordNumber;
+ $this->_saveHeaders();
+
+ switch ($this->shapeType) {
+ case 0:
+ $this->_saveNullRecord();
+ break;
+ case 1:
+ $this->_savePointRecord();
+ break;
+ case 3:
+ $this->_savePolyLineRecord();
+ break;
+ case 5:
+ $this->_savePolygonRecord();
+ break;
+ case 8:
+ $this->_saveMultiPointRecord();
+ break;
+ default:
+ $this->setError(sprintf("The Shape Type '%s' is not supported.", $this->shapeType));
+ break;
+ }
+ $this->_saveDBFData();
+ }
+
+ function updateDBFInfo($header) {
+ $tmp = $this->DBFData;
+ unset($this->DBFData);
+ $this->DBFData = array();
+ reset($header);
+ while (list($key, $value) = each($header)) {
+ $this->DBFData[$value[0]] = (isset($tmp[$value[0]])) ? $tmp[$value[0]] : "";
+ }
+ }
+
+ function _loadHeaders() {
+ $this->recordNumber = loadData("N", fread($this->SHPFile, 4));
+ $tmp = loadData("N", fread($this->SHPFile, 4)); //We read the length of the record
+ $this->shapeType = loadData("V", fread($this->SHPFile, 4));
+ }
+
+ function _saveHeaders() {
+ fwrite($this->SHPFile, pack("N", $this->recordNumber));
+ fwrite($this->SHPFile, pack("N", $this->getContentLength()));
+ fwrite($this->SHPFile, pack("V", $this->shapeType));
+ }
+
+ function _loadPoint() {
+ $data = array();
+
+ $data["x"] = loadData("d", fread($this->SHPFile, 8));
+ $data["y"] = loadData("d", fread($this->SHPFile, 8));
+
+ return $data;
+ }
+
+ function _savePoint($data) {
+ fwrite($this->SHPFile, packDouble($data["x"]));
+ fwrite($this->SHPFile, packDouble($data["y"]));
+ }
+
+ function _loadNullRecord() {
+ $this->SHPData = array();
+ }
+
+ function _saveNullRecord() {
+ //Don't save anything
+ }
+
+ function _loadPointRecord() {
+ $this->SHPData = $this->_loadPoint();
+ }
+
+ function _savePointRecord() {
+ $this->_savePoint($this->SHPData);
+ }
+
+ function _loadMultiPointRecord() {
+ $this->SHPData = array();
+ $this->SHPData["xmin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["ymin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["xmax"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["ymax"] = loadData("d", fread($this->SHPFile, 8));
+
+ $this->SHPData["numpoints"] = loadData("V", fread($this->SHPFile, 4));
+
+ for ($i = 0; $i <= $this->SHPData["numpoints"]; $i++) {
+ $this->SHPData["points"][] = $this->_loadPoint();
+ }
+ }
+
+ function _saveMultiPointRecord() {
+ fwrite($this->SHPFile, pack("dddd", $this->SHPData["xmin"], $this->SHPData["ymin"], $this->SHPData["xmax"], $this->SHPData["ymax"]));
+
+ fwrite($this->SHPFile, pack("V", $this->SHPData["numpoints"]));
+
+ for ($i = 0; $i <= $this->SHPData["numpoints"]; $i++) {
+ $this->_savePoint($this->SHPData["points"][$i]);
+ }
+ }
+
+ function _loadPolyLineRecord() {
+ $this->SHPData = array();
+ $this->SHPData["xmin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["ymin"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["xmax"] = loadData("d", fread($this->SHPFile, 8));
+ $this->SHPData["ymax"] = loadData("d", fread($this->SHPFile, 8));
+
+ $this->SHPData["numparts"] = loadData("V", fread($this->SHPFile, 4));
+ $this->SHPData["numpoints"] = loadData("V", fread($this->SHPFile, 4));
+
+ for ($i = 0; $i < $this->SHPData["numparts"]; $i++) {
+ $this->SHPData["parts"][$i] = loadData("V", fread($this->SHPFile, 4));
+ }
+
+ $firstIndex = ftell($this->SHPFile);
+ $readPoints = 0;
+ reset($this->SHPData["parts"]);
+ while (list($partIndex, $partData) = each($this->SHPData["parts"])) {
+ if (!isset($this->SHPData["parts"][$partIndex]["points"]) || !is_array($this->SHPData["parts"][$partIndex]["points"])) {
+ $this->SHPData["parts"][$partIndex] = array();
+ $this->SHPData["parts"][$partIndex]["points"] = array();
+ }
+ while (!in_array($readPoints, $this->SHPData["parts"]) && ($readPoints < ($this->SHPData["numpoints"])) && !feof($this->SHPFile)) {
+ $this->SHPData["parts"][$partIndex]["points"][] = $this->_loadPoint();
+ $readPoints++;
+ }
+ }
+
+ fseek($this->SHPFile, $firstIndex + ($readPoints*16));
+ }
+
+ function _savePolyLineRecord() {
+ fwrite($this->SHPFile, pack("dddd", $this->SHPData["xmin"], $this->SHPData["ymin"], $this->SHPData["xmax"], $this->SHPData["ymax"]));
+
+ fwrite($this->SHPFile, pack("VV", $this->SHPData["numparts"], $this->SHPData["numpoints"]));
+
+ for ($i = 0; $i < $this->SHPData["numparts"]; $i++) {
+ fwrite($this->SHPFile, pack("V", count($this->SHPData["parts"][$i])));
+ }
+
+ reset($this->SHPData["parts"]);
+ foreach ($this->SHPData["parts"] as $partData){
+ reset($partData["points"]);
+ while (list($pointIndex, $pointData) = each($partData["points"])) {
+ $this->_savePoint($pointData);
+ }
+ }
+ }
+
+ function _loadPolygonRecord() {
+ $this->_loadPolyLineRecord();
+ }
+
+ function _savePolygonRecord() {
+ $this->_savePolyLineRecord();
+ }
+
+ function addPoint($point, $partIndex = 0) {
+ switch ($this->shapeType) {
+ case 0:
+ //Don't add anything
+ break;
+ case 1:
+ //Substitutes the value of the current point
+ $this->SHPData = $point;
+ break;
+ case 3:
+ case 5:
+ //Adds a new point to the selected part
+ if (!isset($this->SHPData["xmin"]) || ($this->SHPData["xmin"] > $point["x"])) $this->SHPData["xmin"] = $point["x"];
+ if (!isset($this->SHPData["ymin"]) || ($this->SHPData["ymin"] > $point["y"])) $this->SHPData["ymin"] = $point["y"];
+ if (!isset($this->SHPData["xmax"]) || ($this->SHPData["xmax"] < $point["x"])) $this->SHPData["xmax"] = $point["x"];
+ if (!isset($this->SHPData["ymax"]) || ($this->SHPData["ymax"] < $point["y"])) $this->SHPData["ymax"] = $point["y"];
+
+ $this->SHPData["parts"][$partIndex]["points"][] = $point;
+
+ $this->SHPData["numparts"] = count($this->SHPData["parts"]);
+ $this->SHPData["numpoints"]++;
+ break;
+ case 8:
+ //Adds a new point
+ if (!isset($this->SHPData["xmin"]) || ($thi PData["parts"]); < $point["y"])) $this->SHPData["ymax"] = $point["y"]; a["ymax"])); try"); ?>" />