Skip to content
Browse files

new

  • Loading branch information...
1 parent 37aa00c commit 905f966500b619e3434d1ed0495c18f9e164fb88 @lem9 lem9 committed
Showing with 14,450 additions and 0 deletions.
  1. +9 −0 CREDITS
  2. +782 −0 ChangeLog
  3. +4,528 −0 Documentation.html
  4. +9 −0 INSTALL
  5. +340 −0 LICENSE
  6. +74 −0 README
  7. +21 −0 README.VENDOR
  8. +10 −0 TODO
  9. +289 −0 browse_foreigners.php
  10. +97 −0 bs_change_mime_type.php
  11. +52 −0 bs_disp_as_mime_type.php
  12. +70 −0 bs_play_media.php
  13. +30 −0 calendar.php
  14. +87 −0 changelog.php
  15. +26 −0 chk_rel.php
  16. +69 −0 config.sample.inc.php
  17. +12 −0 contrib/README
  18. +12 −0 contrib/packaging/Fedora/phpMyAdmin-http.conf
  19. +163 −0 contrib/packaging/Fedora/phpMyAdmin.spec
  20. +44 −0 contrib/swekey.sample.conf
  21. +52 −0 db_create.php
  22. +327 −0 db_datadict.php
  23. +77 −0 db_export.php
  24. +27 −0 db_import.php
  25. +673 −0 db_operations.php
  26. +269 −0 db_printview.php
  27. +944 −0 db_qbe.php
  28. +372 −0 db_search.php
  29. +45 −0 db_sql.php
  30. +581 −0 db_structure.php
  31. +277 −0 docs.css
  32. +83 −0 error.php
  33. +676 −0 export.php
  34. BIN favicon.ico
  35. +412 −0 import.php
  36. +189 −0 index.php
  37. +449 −0 js/common.js
  38. +124 −0 js/dom-drag.js
  39. +1,306 −0 js/functions.js
  40. +91 −0 js/indexes.js
  41. +59 −0 js/keyhandler.js
  42. BIN js/mooRainbow/images/blank.gif
  43. BIN js/mooRainbow/images/moor_arrows.gif
  44. BIN js/mooRainbow/images/moor_boverlay.png
  45. BIN js/mooRainbow/images/moor_cursor.gif
  46. BIN js/mooRainbow/images/moor_slider.png
  47. BIN js/mooRainbow/images/moor_woverlay.png
  48. BIN js/mooRainbow/images/rainbow.png
  49. +114 −0 js/mooRainbow/mooRainbow.css
  50. +563 −0 js/mooRainbow/mooRainbow.js
  51. +16 −0 js/mootools-domready-rainbow.js
Sorry, we could not display the entire diff because too many files (673) changed.
View
9 CREDITS
@@ -0,0 +1,9 @@
+$Id$
+
+
+phpMyAdmin - Credits
+====================
+
+ Please have a look to the Documentation.txt or
+ Documentation.html files.
+
View
782 ChangeLog
@@ -0,0 +1,782 @@
+----------------------
+phpMyAdmin - ChangeLog
+----------------------
+
+$Id$
+$HeadURL: https://phpmyadmin.svn.sourceforge.net/svnroot/phpmyadmin/trunk/phpMyAdmin/ChangeLog $
+
+3.1.0.0 (not yet released)
++ [auth] Support for Swekey hardware authentication
+- bug #2046883 [core] Notices about deprecated dl() (so stop using it)
++ BLOBstreaming support, thanks to Raj Kissu Rajandran and
+ Google Summer of Code 2008
++ patch #2067462 [lang] link FAQ references in messages,
+ thanks to Thijs Kinkhorst - kink
++ new setup script, thanks to Piotr Przybylski (work in progress)
+- rfe #1892243 [export] more links to documentation
++ [auth] cookie auth now autogenerates blowfish_secret, but it has some
+ limitations and you still should set it in config file
++ [auth] cookie authentication is now the default
++ [auth] do not allow root user without password unless explicitly enabled by
+ AllowNoPasswordRoot
++ rfe #1778908 [auth] arbitrary server auth can now also accept port
+- patch #2089240 [export] handle correctly switching SQL modes
++ rfe #1612724 [export] add option to export without comments
+- bug #2090002 [display] Cannot edit row in VIEW
+- patch #2099962 [js] fix js error without frameset, thanks to Xuefer
+- patch #2099972 [structure] Display None when there is no default value,
+ thanks to Xuefer - xuefer
+- patch #2122883 [PDF schema] Option to display just the keys,
+ thanks to Samuel Sol Villar dos Santos - yohanleafheart
++ rfe #1276463 [search] Search empty/not empty values
++ rfe #823652 [structure] ENUM values: field size too small
+- [lang] Persian update, thanks to Goolex - goolex
+- [lang] Czech update, thanks to Nicky 726.
+
+3.0.2.0 (not yet released)
+- [lang] Italian update, thanks to Luca and fantu
+- bug #2107583 [GUI] Leading newline truncated, thanks to Isart Montane
+- bug #2222230 [import] Assigning a value in import.php, thanks to
+ Glen Arason
+
+3.0.1.1 (2008-10-30)
+- [security] XSS in a Designer component
+
+3.0.1.0 (2008-10-22)
+- bug #2134126 [GUI] SQL error after sorting a subset
++ [lang] Catalan update, thanks to Xavier Navarro
++ [lang] Russian update, thanks to Victor Volkov
+- patch #2143882 [import] Temporary uploaded file not deleted,
+ thanks to David Misc - dmisc
+- bug #2136986 [auth] Cannot create database after session timeout
+- bug #1914066 [core] ForceSSL generates incorrectly escaped redirections,
+ this time with the correct fix
++ [lang] Hungarian update, thanks to Jozsef Tamas Herczeg - dodika
+- bug #2153970 [core] Properly truncate SQL to avoid half of html tags
++ [lang] Romanian update, thanks to Sergiu Bivol - sbivol
+- bug #2161443 [structure] Incorrect index choice shown when modifying an
+index
+- bug #2127094 [interface] Misleading message after cancelling an action
++ [lang] Croatian update, thanks to Renato Pavicic
++ [lang] Finnish update, thanks to Jouni Kahkonen
++ [lang] Polish update, thanks to Jakub Wilk
++ [lang] Japanese update, thanks to Ishigaki Kenichi
+- patch #2176438 [privileges] Wrong message when changing password,
+ thanks to incognito - zytisin
+- bug #2163437 [core] Cannot disable PMA tables
+- bug #2184240 [lang] Problems with Italian language file, thanks to Luca
+Rebellato
+- bug #2187193 [interface] ShowChgPassword setting not respected
+
+3.0.0.0 (2008-09-27)
++ [export] properly handle line breaks for YAML, thanks to Dan Barry -
+danbarry
++ [navi] new parameter $cfg['LeftDefaultTabTable']
++ [table] support MySQL 5.1 PARTITION: CREATE TABLE / Table structure,
+ partition maintenance
++ [privileges] support for EVENT and TRIGGER
++ [error handler] NEW handle errors to prevent path disclosure and display/collect errors
++ [mysqlnd] do not display $strMysqlLibDiffersServerVersion if the client
+ is mysqlnd
++ [webapp] experimental Mozilla Prism support
++ [export] new plugin "codegen" for NHibernate, thanks to caocao; I'm
+ looking for a name more descriptive than codegen, taking into account
+ that it might later support other formats like JSON in the same plugin
++ [export] new export to Texy! markup
++ [lang] Finnish update, thanks to Jouni Kahkonen
++ [config] new parameter $cfg['CheckConfigurationPermissions']
++ [config] new parameter $cfg['Servers'][$i]['ShowDatabasesCommand']
++ [config] new parameter $cfg['Servers'][$i]['CountTables']
++ rfe #1775288 [transformation] proper display if IP-address stored as INT
++ rfe #1758177 [core] Add the Geometry DataTypes
++ rfe #1741101, patch #1798184 UUID default for CHAR(36) PRIMARY KEY,
+ thanks to Gert Palok - gert_p
+- bug #1664240 [GUI] css height makes cfg TextareaRows useless
+- bug #1724217 [Create PHP Code] doesn't include newlines for text fields
+- bug #1845605 [i18n] translators.html still uses iso-8859-1
+- bug #1823018 [charset] Edit(Delete) img-links pointing to wrong row
+- bug #1826205 [export] Problems with yaml text export
+- bug #1344768 [database] create/alter table new field can not have empty string
+ as default
++ rfe #1840165 [interface] Enlarge column name field in vertical mode
++ patch #1847534 [interface] New "Inside field" in db search,
+ thanks to obiserver
++ [GUI] Mootools js library (http://mootools.net) and new parameter
+ $cfg['InitialSlidersState']
+* [core] cache some MySQL stats (do not query them with every page request)
++ [view] clearer dialog WITH (CASCADED | LOCAL) CHECK OPTION
++ [lang] Norwegian update, thanks to Sven-Erik Andersen
++ [lang] Japanese update, thanks to Ishigaki Kenichi
++ [lang] Italian update, thanks to Luca Rebellato
++ [gui] Events
+ * minimal support on db structure page
+ * export
++ [pdf] Merged tcpdf 2.2.002 (PHP5 version), thanks to Nicola Asuni
++ [engines] Maria support
++ [engines] MyISAM and InnoDB: support ROW_FORMAT table option
++ prevent search indexes from indexing phpMyAdmin installations
++ [engines] PBXT: table options, foreign key (relation view, designer)
++ [lang] New Bangla, thanks to Raquibul Islam and Joy Kumar Nag
++ [interface] Display options; thanks to Dave Grijalva
+ for the idea about showing the display field while browsing
+- bug #1910621 [display] part 2: do not display a BINARY content as text
++ [auth] support SweKey hardware authentication
+ see http://phpmyadmin.net/auth_key
++ rfe #1962383 [designer] Option to create a PDF page
+- patch #2007196, Typos in comments, thanks to knittl - knittl
+- bug #1982315 [GUI] Comma and quote in ENUM, thanks to Joshua Hogendorn
++ [GUI] Color picker
+- bug #1970836 [parser] SQL parser is slow, thanks to Christian Schmidt
++ rfe #1692928 [transformation] Option to disable browser transformations
++ [import] Speed optimization to be able to import the sakila database
++ [doc] Documentation for distributing phpMyAdmin in README.VENDOR.
++ [display] headwords for sorted column
+- bug #2033962 [import] Cannot import zip file
++ [lang] Swedish update, thanks to Björn T. Hallberg
+- bug #2050068 [gui] "Check tables having overhead" selects wrong tables
++ [lang] Belarusian update, thanks to Jaska Zedlik
++ [lang] Norwegian update, thanks to Sven-Erik Andersen
++ [lang] Italian update, thanks to Luca Rebellato
+- [core] safer handling of temporary files with open_basedir (thanks to Thijs
+ Kinkhorst)
+- [core] do not automatically set and create TempDir, it might lead to security
+ issue (thanks to Thijs Kinkhorst)
++ [lang] Czech update
+- bug #2066923 [display] Navi browse icon does not go to page 1
+- patch #2075263 [auth] Single sign-on and cookie clearing,
+ thanks to Charles Suh - cws125
+- [doc] better documentation of $cfg['TempDir']
+- bug #2080963 [charset] Clarify doc and improved code, thanks to
+ Victor Volkov - hanut
+- bug [charset] Cannot sort twice on a column when the table name
+ contains accents
++ [lang] Spanish update, thanks to Daniel Hinostroza
++ [lang] Hungarian update, thanks to Jozsef Tamas Herczeg - dodika
+- bug #2113848 [navi] Page number after database switching
+- patch #2115966 [GUI] Checkboxes and IE 7, thanks to Martin - maschg
+- bug #1914066 [core] ForceSSL generates incorrectly escaped redirections
+
+2.11.9.3 (2008-10-30)
+- [security] XSS in a Designer component
+
+2.11.9.2 (2008-09-22)
+- [security] XSS in MSIE using NUL byte, thanks to JPCERT.
+
+2.11.9.1 (2008-09-15)
+- [security] Code execution vulnerability, thanks to Norman Hippert
+
+2.11.9.0 (2008-08-28)
+- bug #2031221 [auth] Links to version number on login screen
+- bug #2032707 [core] PMA does not start if ini_set() is disabled
+- bug #2004915 [bookmarks] Saved queries greater than 1000 chars not
+ displayed, thanks to Maik Wiege - mswiege
+- bug #2037381 [export] Export type "replace" does not work
+- bug #2037375 [export] DROP PROCEDURE needs IF EXISTS
+- bug #2045512 [export] Numbers in Excel export
+- bug #2074250 [parser] Undefined variable seen_from
+
+2.11.8.0 (2008-07-28)
+- patch #1987593 [interface] Table list pagination in navi,
+ thanks to Jason Day - jday29
+- bug #1989081 [profiling] Profiling causes query to be executed again
+ (really causes a problem in case of INSERT/UPDATE)
+- bug #1990342 [import] SQL file import very slow on Windows,
+ thanks to Richard Heaton - wotnot
+- bug [XHTML] problem with tabindex and radio fields
+- bug #1971221 [interface] tabindex not set correctly
+- bug [views] VIEW name created via the GUI was not protected with backquotes
+- bug #1989813 [interface] Deleting multiple views (space in name)
+- bug #1992628 [parser] SQL parser removes essential space
+- bug #1989281 [export] Export fails if one table is marked as crashed
+- bug #2001005 [GUI] ARCHIVE cannot have indexes
+- bug #1989281 [export] CSV for MS Excel incorrect escaping of double quotes
+- bug #1959855 [interface] Font size option problem when no config file
+ (todo (trunk): navi frame size does not change for theme original)
+- bug #1982489 [relation] Relationship view should check for changes
+- bug [history] Do not save too big queries in history
+- [security] Do not show version info on login screen
+- bug #2018595 [import] Potential data loss on import resubmit
+- patch #2020630 [export] Safari and timedate, thanks to Sebastian Mendel,
+ Isaac Bennetch and Jürgen Wind
+- bug #2022182 [import, export] Import/Export fails because of Mac files
+- [security] protection against cross-frame scripting and
+ new directive AllowThirdPartyFraming, thanks to YGN Ethical Hacker Group
+- [security] possible XSS during setup, thanks to YGN Ethical Hacker Group
+- [interface] revert language changing problem introduced with 2.11.7.1
+
+2.11.7.1 (2008-07-15)
+- bug [security] XSRF/CSRF by manipulating the db,
+ convcharset and collation_connection parameters,
+ thanks to YGN Ethical Hacker Group
+
+2.11.7.0 (2008-06-23)
+- bug #1908719 [interface] New field cannot be auto-increment and primary key
+- [dbi] Incorrect interpretation for some mysqli field flags
+- bug #1910621 [display] part 1: do not display a TEXT utf8_bin as BLOB
+ (fixed for mysqli extension only)
+- [interface] sanitize the after_field parameter,
+ thanks to Norman Hippert
+- [structure] do not remove the BINARY attribute in drop-down
+- bug #1955386 [session] Overriding session.hash_bits_per_character
+- [interface] sanitize the table comments in table print view,
+ db print view and db data dictionary, thanks to Norman Hippert
+- bug #1939031 Auto_Increment selected for TimeStamp by Default
+- patch #1957998 [display] No tilde for InnoDB row counter when we know
+ it for sure, thanks to Vladyslav Bakayev - dandy76
+- bug #1955572 [display] alt text causes duplicated strings
+- bug #1762029 [interface] Cannot upload BLOB into existing row
+- bug #1981043 [export] HTML in exports getting corrupted,
+ thanks to Jason Judge - jasonjudge
+- bug #1936761 [interface] BINARY not treated as BLOB: update/delete issues
+- protection against XSS when register_globals is on and .htaccess has
+ no effect, thanks to Tim Starling
+- bug #1996943 [export] Firefox 3 and .sql.gz (corrupted); detect Gecko 1.9,
+ thanks to Jürgen Wind - windkiel
+
+2.11.6.0 (2008-04-29)
+- bug #1903724 [interface] Displaying of very large queries in error message
+- bug #1905711 [compatibility] Functions deprecated in PHP 5.3: is_a() and
+ get_magic_quotes_gpc(), thanks to Dmitry N. Shilnikov - yrtimd
+- bug [lang] catalan wrong accented characters
+- bug #1893034 [Export] SET NAMES for importing with command-line client
++ [lang] Russian update, thanks to Victor Volkov
+- bug #1910485 [core] Unsetting the whitelist during the loop,
+ thanks to Jeroen Vrijkorte - jv_map
+- bug #1906980 [Export] Import of VIEWs fails if temp table exists,
+ thanks to Falk Nisius - klaf
+- bug #1812763 [Copy] Table copy when server is in ANSI_QUOTES sql_mode
+ thanks to Tony Marston - tonymarston
+- bug #1918531 [compatibility] Navigation isn't w3.org valid
+ thanks to Michael Keck - mkkeck
+- bug #1926357 [data] BIT defaults displayed incorrectly
+- patch #1930057 [auth] colon in password prevents HTTP login on CGI/IIS,
+ thanks to Jürgen Wind - windkiel
+- patch #1929553 [lang] Don't output BOM character in Swedish language file,
+ thanks to Samuel L. B. - samuellb
+- patch #1895796 [lang] Typo in Japanese lang files,
+ thanks to tyman - acoustype
+- bug #1935652 [auth] Access denied (show warning about mcrypt on login page)
+- bug #1906983 [export] Reimport of FUNCTION fails
+- bug #1919808 [operations] Renaming a database fails to handle functions
+- bug #1934401 [core] Cannot force a language
+- bug #1944077 [core] Config file containing a BOM,
+ thanks to Gaetano Giunta - ggiunta
+- bug #1947189 [scripts] Missing </head> in scripts/signon.php,
+ thanks to Dolf Schimmel
++ [lang] Romanian update, thanks to Sergiu Bivol - sbivol
+
+2.11.5.2 (2008-04-22)
+- PMASA-2008-3 [security] File disclosure
+
+2.11.5.1 (2008-03-29)
+- bug #1909711 [security] Sensitive data in session files
+
+2.11.5.0 (2008-03-01)
+- bug #1862661 [GUI] Warn about rename deleting database
+- bug #1866041 [interface] Incorrect sorting with AS
+- bug #1871038 [import] Notice: undefined variable first_sql_delimiter
+- bug #1873110 [export] Problem exporting with a LIMIT clause
+- bug #1871164 [GUI] Empty and navigation frame synch.
+- patch #1873188 [GUI] Making db pager work when js is disabled,
+ thanks to Jürgen Wind - windkiel
+- bug #1875010 [auth] MySQL server and client version mismatch (mysql ext.)
+- patch #1879031 [transform] dateformat transformation and UNIX timestamps,
+ thanks to Tim Steiner - spam38
+- bug [import] Do not verify a missing enclosing character for CSV,
+ because files generated by Excel don't have any enclosing character
+- bug #1799691 [export] "Propose table structure" and Export
+- bug #1884911 [GUI] Space usage
+- bug #1863326 [GUI] Wrong error message / no edit (Suhosin)
+- bug #1887204 [GUI] Order columns in result list messing up query
+- patch #1893538 [GUI] Display issues on Opera 9.50,
+ thanks to Jürgen Wind - windkiel
+- bug [GUI] Do not display the database name used by the previous user,
+ thanks to Ronny Görner
+- bug [security] Remove cookies from $_REQUEST for better coexistence with
+ other applications, thanks to Richard Cunningham. See PMASA-2008-1.
+
+2.11.4.0 (2008-01-12)
+- bug #1843428 [GUI] Space issue with DROP/DELETE/ALTER TABLE
+- bug #1807816 [search] regular expression search doesn't work with
+ backslashes
+- bug #1843463 [GUI] DROP PROCEDURE does not show alert
+- bug #1835904 [GUI] Back link after a SQL error forgets the query
+- bug #1835654 [core] wrong escaping when using double quotes
+- bug #1817612 [cookies] Wrong cookie path on IIS with PHP-CGI,
+ thanks to Carsten Wiedmann
+- bug #1848889 [export] export trigger should use DROP TRIGGER IF EXISTS
+- bug #1851833 [display] Sorting forgets an explicit LIMIT
+ (fix for sorting on column headers)
+- bug #1764182 [cookies] Suhosin cookie encryption breaks phpMyAdmin
+- bug #1798786 [import] Wrong error when a string contains semicolon
+- bug #1813508 [login] Missing parameter: field after re-login
+- bug #1710144 [parser] Space after COUNT breaks Export but not Query
+- bug #1783620 [parser] Subquery results without "as" are ignored
+- bug #1821264 [display] MaxTableList and INFORMATION_SCHEMA
+- bug #1859460 [display] Operations and many databases
+- bug #1814679 [display] Database selection pagination when switching servers
+- patch #1861717 [export] CSV Escape character not exported right,
+ thanks to nicolasdigraf
+- bug #1864468 [display] Theme does not switch to darkblue_orange
+- bug #1847409 [security] Path disclosure on darkblue_orange/layout.inc.php,
+ thanks to Jürgen Wind - windkiel
+
+2.11.3.0 (2007-12-08)
+- patch #1818389 to remove a notice (failed to flush buffer), thanks to
+ Bertrand
+- patch #1821154, HTTP authentication: fix auth working with php/mod_fastcgi,
+ thanks to yarodin
+- wrong default charset in case of broken session
+- bug #1824506 [profiling] Profile command repeated on older MySQL servers
+- bug #1825172 [export] Exporting and functions
+- bug #1817224 [import] Incorrect detection of file_uploads in some cases,
+ thanks to Juergen Wind
+- bug #1777249 [display] Do not underline links in left panel (in default
+ themes)
+- bug #1826022 [privileges] unable to add user (MySQL 3.23) since PMA 2.11.2
+- bug #1823045 [import] Error importing file with lowercase "delimiter"
+- bug #1828913 [structure] Can't set FULLTEXT index on CHAR column
+- bug #1804081 [export] export on server doesn't obey AllowAnyWhereRecoding
+- bug #1789988 [display] space before SHOW COLUMNS
+- bug #1831646 [table creation] Error in CREATE TABLE with multiple primary
+ keys and AUTO_INCREMENT
+- [display] Division by zero when showing all records (page selector)
+- bug #1828265 [privileges] No weird characters in generated password
+- bug #1759194 [import] open_basedir warning
+- bug #1793948 [parser] ROW_FORMAT incorrectly parsed
+- undefined PMA_MYSQL_INT_VERSION when no default server is set
+- bug #1763343 [session] Behavior with session.auto_start enabled
++ [lang] Hungarian update, thanks to Mihály Mészáros
++ [lang] German update, thanks to Jürgen Wind - windkiel
+- patch #1837691 [query window] js errors, thanks to Victor Volkov
+- patch #1839052 [lang] catalan not in UTF-8, thanks to jaz001
+- patch #1838626 [GUI] Login interface broken on Konqueror, thanks to fhimpe
+
+2.11.2.2 (2007-11-20)
+- bug #1835123 [security] fixed XSS vulnerability on login page,
+ thanks to Tim Brown (Nth Dimension) for the advisory
+ and to Sebastian for the fix
+
+2.11.2.1 (2007-11-11)
+- fixed possible SQL injection using database name
+- fixed possible XSS in database name - thanks to Omer Singer, The DigiTrust Group
+
+2.11.2.0 (2007-10-27)
+- patch #1791576 HTTP auth: support REDIRECT_REMOTE_USER, thanks to Allard
++ [lang] Serbian update, thanks to Mihailo Stefanovic
+- bug #1798841 [relations] Copying db does not copy internal relations
+- bug #1798646 [display] Character '+' in query wrongly interpreted
+- bug #1801919 [themes] Do not use NaviDatabaseNameColor for fieldset legend
+- bug #1764735 [core] Designer: PDF error when deleting a table
+- bug #1764195 [views] DROP button does not work on defective views
+- bug #1805773 [relations] browse foreign values: return values not escaped,
+ thanks to Alex Rambau
+- bug #1807923 [login] Login with html entities in password fails
+- [core] Undefined variable when creating a table that exists
+- patch #1808578 Changes in font size were no longer detected after patch
+ #1787915
++ [lang] Croatian update, thanks to Renato Pavicic
+- patch #1807615 [GUI] Display patch for column rights in Opera
+- bug #1811519 Can't delete user with a german umlaut.
+- bug #1811519 [privileges] fixed used collation for accessing mysql.user in server privileges
+- it should not be possible to move or copy a table to information_schema
+- bug #1814733 win: copy db to mixed name db fails
+- bug #1777249 [display] Remove horizontal lines in navigation panel
+- bug #1805102 [display] TextareaAutoSelect issues: set this parameter
+ default value to false to help cut&paste from a terminal window; also
+ set focus to the textarea
+- bug #1814463 [display] Wrong database size
+- bug #1811527 [display] Problem with links to the MySQL manual
+- patch #1817529 [auth] Incorrect login via URL when AllowArbitraryServer
+ is true, thanks to Juergen Wind
+
+2.11.1.2 (2007-10-17)
+- fixed XSS in server_status.php, thanks to Omer Singer, The DigiTrust Group
+- fixed some possible XSS with PHP_SELF, PATH_INFO, REQUEST_URI
+ (reference: CVE-2007-5589)
+
+2.11.1.1 (2007-10-15)
+- bug #1810629 [setup] XSS in setup.php, thanks to Omer Singer, The DigiTrust Group
+
+2.11.1.0 (2007-09-20)
+- bug #1783667 [export] NO_AUTO_VALUE_ON_ZERO and MySQL version
+- bug #1780098 [GUI] Logout causes CSS loss, thanks to Juergen Wind
+. incorrect field ids, thanks to Michael Keck
+- bug #1787522 [view] wrong choice in algorithm drop-down
+- bug #1777620 [GUI] Table Print preview: missing column header,
+ thanks to Mario Rohkrämer
+- Do not display "Your MySQL library..." if only the Z part of X.Y.Z version
+ is different
+- bugs #1767759, 1216521 [data] Duplicate entry error Browse feature: this minor
+ feature removed due to its complexity
+- bug #1774825 [operations] Rename database loses charset info
+- bug #1791568 [core] Undefined cfg, thanks to Christian Schmidt
+- bug #1782332 [structure] New table form does not overtake data
+- bug #1793763 [requirements] minimum PHP should be 4.2.0
+- patch #1787915 Avoid CSS reloading on every click, thanks to Juergen Wind
+- bug #1798627 [GUI] Wrong storage engine displayed
+
+2.11.0.0 (2007-08-21)
++ [import] support handling of DELIMITER to mimic mysql CLI, thanks to fb1
++ improved PHP 6 compatibility
+- bug #1674914 [structure] changing definition of a TIMESTAMP field
+- bug #1615530 [upload] added more specific error message if field upload fails
+- bug #1627210, #1083301, #1482401 [data] warning on duplicate indexes
+- bug #1668724 JavaScript focus login Opera
+- bug #1666657 [auth] Cookie password delete on timeout / inactivity
+- bug #1648802 different mysql library and server version
+- bug #1662976 [auth] Authentication fails when controluser/pass is set
+- bug #1643758 [import] Error #1264 importing NULL values in MySQL 5.0
+- bug #1523747 [innodb] make warning about row count more visible
+- bug #1676012 [auth] strip non-US-ASCII characters (RFC2616)
+- bug #1679440 Added FAQ entry about header errors under IIS caused by
+ an end-of-line character
+- [gui] avoid displaying a wide selector in server selection
+- bug #1614004 [relation] foreign key spanning multiple columns are
+ incorrectly displayed
+- bug #1681598 [interface] Edit next row
+- bug #1688053 [export] Wrong export of binary character fields
+- bug #1498281 [parser] Wrong primary key used for displaying results
+ with subquery
+- bug #1699772 Visual space bug in table name (in browser)
+- bug #1699532 Cause of data manipulation issues: implemented changes
+ as suggested by crisp_; still have to work on updating an ENUM value
++ [core] added PMA_fatalError() and made use of it
+. [core] added PMA_isValid() and PMA_ifSetOr() for variable handling
+. [i18n] use generic $strOptions
+. [core] get rid of $propicon
+. [core] globalized variables to be includable inside function in
+ libraries/select_lang.lib.php
++ [doc] changed all documentation in config.inc.php to phpDocumentor style
++ [data] support for CREATE VIEW from query results
++ [gui] dropped css/ folder and moved into root of PMA
++ [l10n] new: Sinhala, Macedonian
++ [export] YAML export (see yaml.org), thanks to Bryce Thornton
++ [upload] moved file upload functionality into own class
++ [upload] make use of $cfg['TempDir'] for file uploads
++ [server] improved display of binary logs
++ [data] better error handling in tbl_create.php
++ [routines] from Patch #1649881, thanks to Mike Beck
++ [querywindow] store sql history in session
++ [querywindow] sql history now without db too
++ [querywindow] tweaks in sql history view
++ [export] Native Excel (Spreadsheet_Excel_Writer) improvements,
+ thanks to Christian Schmidt
++ [doc] requirement of mcrypt on 64-bit, thanks to Isaac Bennetch
++ [lang] Danish update, thanks to Finn Sorensen
++ RFE #1435922 [gui] navigation frame shows listing of databases when none selected
++ [data] support BIT datatype (under mysqli), thanks to Christian Schmidt
++ [display] automatic confirmation for sort by key, thanks to Juergen Wind
++ [data] can now choose the number of insert rows
++ RFE #1704779 [gui] link documentation from login page
++ RFE #1513345 [setup] check control user connection during setup
++ [structure] TRIGGERS: display/edit/drop/SQL export
++ [browse] store browse state in session per query
++ [lang] Turkish update, thanks to Burak Yavuz
++ [lang] Galician update, thanks to Xosé Calvo
++ [lang] Brazilian-Portuguese update, thanks to Airon Luis Pereira
++ [gui] Insert/Edit: no longer display the Go button each 15 lines
+ but just at the end of a row
++ [gui] Query window: use verbose server name if any
++ [auth] patch #1712514 specify host for single signon, thanks to Thierry
++ [gui] Navigator for the db list in the navigation panel
++ [gui] Navigator for the table list in the content panel
+- bug #1727138 HTML not encoded (more than 1000 characters)
++ [display] Support for MySQL 5.0.37 profiling
++ RFE #1743983 [gui] Replace $max_characters by a configurable param:
+ $cfg['MaxCharactersInDisplayedSQL']
+- bug #1746186 LeftLogoLink fails if set to some external site
+. [transformations]: remove "auto-detect" MIME-type that was never implemented
++ [display] patch #1749705, Allow multibyte characters in number formatting,
+ thanks to garas
+- bug #1747215 Export emits blanks at line ends
+- bug #1751172 Do not export data when exporting a single VIEW
++ [lang] Swedish update, thanks to Björn T. Hallberg
++ [lang] Russian update, thanks to Victor Volkov and the php-myadmin.ru users
++ [privileges] Support password hashing on the Edit Privileges interface
+- bug #1755339 Warn about rename dataase actually being copy/delete
+- bug #1746921 Left frame shrinks on db change, thanks to Juergen Wind
++ [gui] Export: Select All/Unselect All over the choices,
+ thanks to Florian Schmitz
++ [lang] Japanese update, thanks to Ishigaki Kenichi
+- bug #1759528 browse_foreigners fails due to newlines,
+ thanks to Hanno Boeck
++ [lang] Norwegian update, thanks to Sven-Erik Andersen
++ [lang] Italian update, thanks to Luca Rebellato
++ [lang] Spanish update, thanks to Daniel Hinostroza
+. [export] Do not obey $cfg['MaxTableList'] on database export
+- [doc] UploadDir and the Import tab, thanks to Juergen Wind
+- bug #1766975 Parameters lost when editing stored routine
+- [export] patch #1766633 Incorrect export with specified MySQL port,
+ thanks to Juergen Wind
++ [lang] Catalan update, thanks to Xavier Navarro
+- bug #1751553 Drop-down instead of input when editing
+- [data] foreign key browser: encoding mixups, thanks to Thijs Kinkhorst
+- bug #1771721 Old SVN URLs
+
+2.10.3.0 (2007-07-20)
+- bug #1734285 Copy database with VIEWs
+- bug #1722502 DROP TABLE in export VIEW
+- bug #1729027 Sorting results of VIEW browsing
+- bug #1733012 Unwanted table alias in delete button
+- bug #1736405 Pretty printer and HTML line breaks
+- bug #1745257 Invalid DB name is still displayed
+- bug #1730367 Calendar "Go" has no effect
+- bug #1748633 Incorrect parameter validation for VIEWs
++ [lang] Russian revision, thanks to Victor Volkov and the users of
+ php-myadmin.ru
+- Do not try to delete an internal relation if we just deleted an InnoDB one
+
+2.10.2.0 (2007-06-15)
++ [data] display all warnings, not only last one
+- typo in fix for bug #1671813
+- bug #1714908 Inserted Row Count is wrong
+- bug #1712570 Deleting last record freezes
+- bug #1717339 Missing header when deleting a checked column,
+ thanks to Michael Keck
+- bug #1717477 Warning on Query page when db is empty
+- bug #1721002 db rename -> undefined cfgRelation, thanks to Jürgen Wind
+- bug #1721571 CREATE database privilege not always detected,
+ thanks to Gordon McNaughton
+- bug #1715709 export in SQL format always includes procedures and functions
+- bug #1722502 DROP TABLE in export view structure
+- bug #1718787 Multi-server setup breaks Designer
+- bug #1724401 Column truncation in repair table output
+- patch #1726500 Wrong position of </tbody>, thanks to Jürgen Wind
+- bug #1728590 Detected failing session_start fails, thanks to Jürgen Wind
+- RFE #1714760 Obey ShowCreateDb on the Databases tab
+- patch #1733762 Typo in message "INSERT DELAY", thanks to Victor Volkov
+- patch #1730171 Dead message strLanguageFileNotFound, thanks to Victor Volkov
+- patch #1731280 Avoid negative exponent in gmp_pow(), thanks to anosek
+
+2.10.1.0 (2007-04-23)
+- bug #1541147 [js] '#' in database names not correctly handled by queywindow.js
+- bug #1671403 [parser] using "client" as table name
+- bug #1672379 [core] Call to undefined function PMA_removeCookie()
+- bug [core] undefined variable in libraries/tbl_replace_fields.inc.php
+- bug [gui] query window icon did not work, thanks to Jürgen Wind - windkiel
+. [general] use PMA_getenv('PHP_SELF')
+- bug #1676033 [core] pow(int,int) causes overflow
+- bug #1680952 [core] undefined function PMA_getUvaCondition()
+- bug #1596328 [export] drop support for POSTGRESQL compatibility mode
+- bug #1609443 [privileges] Grant all priv. on wildcard name (fix message)
+- bug #1567317 [sqp] Syntax highlighter: extra spaces
+- bug #1239401 [sqp] table dot numeric field name
+- bug #1672789 [sqp] Undefined offset: 4 in sqlparser.lib.php #1674
+- bug #1682044 [export] Export file even if file not selected
+- bug #1664212 querywindow loses url encoded characters
+- replaced ctype_digit() with is_numeric()
++ [config] clean cookies on phpMyAdmin upgrade
+- bug #1674972 [export] no export with %afm%
+- bug #1667887 HTML maxlength
+- bug #1679055 #1050 - Table '<table name>' already exists
+- patch #1681620 [interface] support reordering of $cfg['ColumnTypes'],
+ thanks to Leonard den Ottolander
+- bug #1690718 Can't edit if BLOB and no PK
+- bug #1672636 [export] PDF export too wide
++ [lang] brazilian-portuguese update, thanks to Airon Luis Pereira
+- patch #1698964 javascript typo, thanks to Corey Hollaway
+- bug #1703897 [css] undefined index 'js_frame'
+- bug #1690561 Blobs being cleared on Edit of row
+- bug #1679801 [core] XSS vulnerability in PMA_sanitize(), thanks to sp3x SecurityReason
+- bug #1704467 XSS vulnerability in browse_foreigners.php, thanks to sp3x SecurityReason
+
+2.10.0.2 (2007-03-02)
++ bug #1671813 CVE-2006-1549 deep recursion crash
+
+2.10.0.1 (2007-03-01)
+. [config] set $cfg['Servers'][$i]['ssl'] default value to false,
+ we got reports from some users having problems with the default value of true
+
+2.10.0.0 (2007-02-28)
+- bug #1659176 [general] memory error displaying a table with large BLOBs
+- bug #1668662 [install] can create the new pma_designer_coords table
++ [gui] navi logo now links to main page by default, with still the possibility
+ of having an external URL
+
+2007-02-25 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/common.lib.php: bug #1667466, undefined variable when
+ export + save on server
+ * server_status.php: bug #1665930, undefined PHP_SELF
+
+2007-02-24 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/config.default.php: RFE #1621437, HEX and UNHEX were not
+ available for a BINARY field
+
+2007-02-21 Marc Delisle <lem9@users.sourceforge.net>
+ * pmd/scripts/move.js: bug #1650770, Designer and Mac OSX,
+ thanks to Ivan Kirillov
+
+2007-02-17 Marc Delisle <lem9@users.sourceforge.net>
+ * Documentation.html: patch #1659347, missing doc for some config,
+ thanks to Isaac Bennetch
+ * libraries/export/sql.php: bug #1663336, undefined variable
+
+2007-02-16 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/common.lib.php, footer.inc.php: avoid generating big links
+ after an upload into a BLOB
+
+2007-02-14 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/common.lib.php: white page after uploading a 700 Kio BLOB
+ * add a warning on main page if mcrypt can't be loaded (bug 1658160)
+
+2007-02-12 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * libraries/database_interface.lib.php: bug #1616486 server_databases does
+ not show all databases
+ * libraries/sqlparser.data.php: MySQL function and column names, reserved
+ and forbidden words updated,
+ bug #1657045 Spatial functions not supported
+ bug #1657037 Missing column type "geometry"
+
+2007-02-09 Marc Delisle <lem9@users.sourceforge.net>
+ * main.php: some links should open a new page
+ * Documentation.html, libraries/navigation_header.inc.php,
+ libraries/config.default.php: $cfg['LeftLogoLinkWindow'] to decide
+ in which window the logo-linked page will appear
+
+2007-02-09 Michal Čihař <michal@cihar.com>
+ * lang/czech: Fix syntax error (sorry for that).
+
+2007-02-08 Marc Delisle <lem9@users.sourceforge.net>
+ * themes/darkblue_orange/img/logo_left.png,
+ themes/original/img/logo_left.png: smaller PMA logo for navi
+
+2007-02-08 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * themes/*/css/theme_right.css.php: bug #1653769 browsing highlight disabling
+ doesn't work
+
+2007-02-06 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * pmd_general.php, pmd_pdf.php, pmd_save_pos.php: fixed short open tags
+ patch #1652886 thanks to Martin Thielecke - mthie
+ * tbl_change.php: fixed escaping of field names in HTML and JavaScript
+ * libraries/common.lib.php: PMA_backquote() did not quote 0
+ * tbl_change.php: bug #1652810 - slashes are not escaped properly
+
+2007-02-05 Marc Delisle <lem9@users.sourceforge.net>
+ * lang/japanese: Update, thanks to Ishigaki Kenichi - tcool.
+
+2007-02-05 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * lang/german: updated
+
+2007-02-03 Marc Delisle <lem9@users.sourceforge.net>
+ * pmd/scripts/move.js: display problems in Opera, thanks to Maxim Bulygin
+
+2007-02-02 Marc Delisle <lem9@users.sourceforge.net>
+ * tbl_replace.php: Calendar icon does not work on "Insert another new row"
+
+2007-02-01 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/import.lib.php: bug #1626064, too much quoting on import
+
+2007-02-01 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * libraries/display_tbl.lib.php: bug #1644740 - $cfg['Order'] = 'SMART'
+ overwritten
+ * libraries/Theme.class.php: removed __wakeup() due to some requirements are
+ not fulfilled at this point - also thanks to Jürgen Wind - windkiel
+
+2007-01-31 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * libraries/session.inc.php:
+ bug #1630871 - Detecting a missing write permission on sessions directory
+
+2007-01-30 Sebastian Mendel <cybot_tm@users.sourceforge.net>
+ * libraries/sqlparser.lib.php PMA_SQP_analyze():
+ bug #1647785 - do not pass variables by reference
+
+2007-01-29 Marc Delisle <lem9@users.sourceforge.net>
+ * lang/catalan update, thanks to Xavier Navarro (xavin)
+ * pmd_general.php: possibility of quotes in Designer messages,
+ thanks to Ivan Kirillov
+
+2007-01-26 Michal Čihař <michal@cihar.com>
+ * libraries/common.lib.php, libraries/js_escape.lib.php,
+ test/escape_js_string.php, test/core.lib.php: Move java script escaping
+ to separate library, make it safer on </script> escaping and add
+ testcase for it.
+ * test/theme.php: Move to test package.
+
+2007-01-22 Marc Delisle <lem9@users.sourceforge.net>
+ * pmd/*: button for direct/angular links, thanks to Ivan Kirillov
+
+2007-01-22 Michal Čihař <michal@cihar.com>
+ * lang/czech: Updated.
+
+2007-01-21 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/Table.class.php: on a MySQL 5.0.33 server with 4400 databases,
+ one of which having 400 tables, it took more than 3 minutes just to
+ see the database structure (some accesses to INFORMATION_SCHEMA are
+ just too slow) so I changed PMA_Table::isView() to avoid calling
+ INFORMATION_SCHEMA
+
+2007-01-20 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/sqlparser.lib.php: bug #1638267, wrong reserved word
+ recognition
+ * server_privileges.php: bug #1635377, superfluous backslash,
+ thanks to Hanut
+
+2007-01-19 Marc Delisle <lem9@users.sourceforge.net>
+ * pmd*, lang/*: Designer now supports set/unset of the display field,
+ thanks to Ivan Kirillov
+
+2007-01-18 Michal Čihař <michal@cihar.com>
+ * lang/czech: Updated.
+ * libraries/auth/cookie.auth.lib.php: Make server switching honour more
+ server settings (patch #1630104).
+
+2007-01-17 Marc Delisle <lem9@users.sourceforge.net>
+ * lang/turkish: update, thanks to Burak Yavuz - bourock
+
+2007-01-16 Marc Delisle <lem9@users.sourceforge.net>
+ ### 2.9.2 released from QA_2_9
+
+2007-01-12 Marc Delisle <lem9@users.sourceforge.net>
+ * (many files): Designer, two features (snap to grid / display field)
+ thanks to Ivan Kirillov
+ * libraries/Theme_Manager.class.php: patch #1611684, force a change
+ of a session variable to avoid phpmyadmin.css.php caching problems,
+ thanks to Christian Schmidt
+
+2007-01-11 Marc Delisle <lem9@users.sourceforge.net>
+ * lang/estonian: Update, thanks to Marko Ellermaa - uhuu
+
+2007-01-09 Michal Čihař <michal@cihar.com>
+ * index.php: Properly escape strings written in JS code.
+ * libraries/Theme_Manager.class.php: Avoid trigger error here, parameter
+ comes from user and it might lead to path disclossure.
+ * libraries/common.lib.php:
+ - Properly escape </script> in JS code.
+ - Check db, table and sql_query params to be string.
+
+2007-01-08 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/session.inc.php: prevent attack on session name cookie
+
+2007-01-05 Marc Delisle <lem9@users.sourceforge.net>
+ * libraries/session.inc.php: bug #1538132, remove the setting of
+ session.save_handler to 'files'
+ * pmd_general.php: patch #1627831,
+ English language improvements, thanks to Isaac Bennetch
+ * pmd_general.php, pmd_relation_new.php, lang/*: abstract messages
+
+2007-01-04 Marc Delisle <lem9@users.sourceforge.net>
+ * pmd/scripts/move.js: avoid text selection when moving a table object
+ under MSIE 6, thanks to Ivan Kirillov
+ * libraries/db_links.inc.php: better icon for Designer, thanks to I.K.
+
+2007-01-02 Marc Delisle <lem9@users.sourceforge.net>
+ * Designer: various fixes and improvements (for example support
+ for MSIE 6), thanks to Ivan Kirillov
+ * pdf_pages.php: undefined $pdf_page_number when no auto layout
+ * server_privileges.php: bug #1614087, deleting a user having a
+ global GRANT privilege fails under MySQL 4.1.x
+
+2007-01-02 Michal Čihař <michal@cihar.com>
+ * libraries/common.lib.php: Add <div> to allow selecting whole SQL by
+ tripple click (patch #1611591).
+ * libraries/export/sql.php: DELIMITER should not be commented out (bug
+ #1612870).
+
+ --- Older ChangeLogs can be found on our project website ---
+ http://www.phpmyadmin.net/old-stuff/ChangeLogs/
+
+# vim: et ts=4 sw=4 sts=4
+# vim: ft=changelog fenc=utf-8 encoding=utf-8
+# vim: fde=getline(v\:lnum-1)=~'^\\s*$'&&getline(v\:lnum)=~'\\S'?'>1'\:1&&v\:lnum>8&&getline(v\:lnum)!~'^#'
+# vim: fdn=1 fdm=expr
View
4,528 Documentation.html
4,528 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
9 INSTALL
@@ -0,0 +1,9 @@
+$Id$
+
+phpMyAdmin - Installation
+-------------------------
+
+ Please have a look to the Documentation.txt or
+ Documentation.html files.
+
+
View
340 LICENSE
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
View
74 README
@@ -0,0 +1,74 @@
+$Id$
+
+phpMyAdmin - Readme
+===================
+
+ A set of PHP-scripts to manage MySQL over the web.
+
+ Version 3.1.0-dev
+ -----------------
+ http://www.phpmyadmin.net/
+
+ Copyright (C) 1998-2000 Tobias Ratschiller <tobias_at_ratschiller.com>
+ Copyright (C) 2001-2007 Marc Delisle <Marc.Delisle_at_cegepsherbrooke.qc.ca>
+ Olivier Müller <om_at_omnis.ch>
+ Robin Johnson <robbat2_at_users.sourceforge.net>
+ Alexander M. Turek <me_at_derrabus.de>
+ Michal Čihař <michal_at_cihar.com>
+ Garvin Hicking <me_at_supergarv.de>
+ Michael Keck <mkkeck_at_users.sourceforge.net>
+ Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
+ [check Documentation.txt/.html file for more details]
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License version 2,
+ as published by the Free Software Foundation.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+ Requirements:
+ php 5.2 or later
+ MySQL 5.0 or later
+ a web-browser (doh!)
+
+ Summary:
+ phpMyAdmin is intended to handle the administration of MySQL over the web.
+ For a summary of features, please see the Documentation.txt/.html file.
+
+ Download:
+ You can get the newest version at http://www.phpmyadmin.net/.
+
+ Credits:
+ Please see the Documentation.txt/.html file.
+
+ Installation:
+ Please see the Documentation.txt/.html file.
+
+ ChangeLog:
+ Now in ChangeLog
+
+ Documentation:
+ Basic documentation available in Documentation.txt/.html
+
+ Support:
+ See reference about support forums under http://www.phpmyadmin.net/
+
+
+ Enjoy!
+ The phpMyAdmin Devel team
+
+
+ PS: Please, don't send us emails with question like "How do I compile
+ PHP with MySQL-support". We just don't have the time to be your
+ free helpdesk.
+ Please send your questions to the appropriate mailinglists / forums.
+ Before contacting us, please read the Documentation.html (esp. the
+ FAQ part).
+
View
21 README.VENDOR
@@ -0,0 +1,21 @@
+$Id: README 10967 2007-12-08 12:46:36Z lem9 $
+
+phpMyAdmin - hints for distributing phpMyAdmin
+==============================================
+
+This document is intended to give advices to people who want to
+redistribute phpMyAdmin inside other software package such as Linux
+distribution or some all in one package including web server and MySQL
+server.
+
+
+Setup script
+------------
+
+If you want to integrate setup script to your packaging, you might want
+to change $cfg_db['_config_file_path'] in setup/lib/config_info.inc.php
+to point to place where you want to generated config file to be saved.
+Please note that directory and the file has to be writable for web
+server user.
+
+# vim: et ts=4 sw=4 sts=4 tw=72 spell spelllang=en_us
View
10 TODO
@@ -0,0 +1,10 @@
+$Id$
+
+phpMyAdmin - Todo
+=================
+
+We are currently using the Sourceforge Tracker as Todo list:
+
+ http://sourceforge.net/tracker/?atid=377411&group_id=23067&func=browse
+
+-- swix/20010704
View
289 browse_foreigners.php
@@ -0,0 +1,289 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * display selection for relational field values
+ *
+ * @version $Id$
+ */
+
+/**
+ * Gets a core script and starts output buffering work
+ */
+require_once './libraries/common.inc.php';
+
+PMA_checkParameters(array('db', 'table', 'field'));
+
+require_once './libraries/ob.lib.php';
+PMA_outBufferPre();
+
+require_once './libraries/header_http.inc.php';
+
+/**
+ * Displays the frame
+ */
+$per_page = 200;
+require_once './libraries/relation.lib.php'; // foreign keys
+require_once './libraries/transformations.lib.php'; // Transformations
+$cfgRelation = PMA_getRelationsParam();
+$foreigners = ($cfgRelation['relwork'] ? PMA_getForeigners($db, $table) : FALSE);
+
+$override_total = TRUE;
+
+if (!isset($pos)) {
+ $pos = 0;
+}
+
+$foreign_limit = 'LIMIT ' . $pos . ', ' . $per_page . ' ';
+if (isset($foreign_navig) && $foreign_navig == $strShowAll) {
+ unset($foreign_limit);
+}
+
+$foreignData = PMA_getForeignData($foreigners, $field, $override_total, isset($foreign_filter) ? $foreign_filter : '', $foreign_limit);
+
+if (isset($pk)) {
+ $pk_uri = '&amp;pk=' . urlencode($pk);
+ ?>
+<input type="hidden" name="pk" value="<?php echo htmlspecialchars($pk); ?>" />
+ <?php
+} else {
+ $pk_uri = '';
+}
+
+$gotopage = '';
+$showall = '';
+
+if (is_array($foreignData['disp_row'])) {
+
+ if ($cfg['ShowAll'] && ($foreignData['the_total'] > $per_page)) {
+ $showall = '<input type="submit" name="foreign_navig" value="' . $strShowAll . '" />';
+ }
+
+ $session_max_rows = $per_page;
+ $pageNow = @floor($pos / $session_max_rows) + 1;
+ $nbTotalPage = @ceil($foreignData['the_total'] / $session_max_rows);
+
+ if ($foreignData['the_total'] > $per_page) {
+ $gotopage = PMA_pageselector(
+ 'browse_foreigners.php?field=' . urlencode($field) .
+ '&amp;' . PMA_generate_common_url($db, $table)
+ . $pk_uri .
+ '&amp;fieldkey=' . (isset($fieldkey) ? urlencode($fieldkey) : '') .
+ '&amp;foreign_filter=' . (isset($foreign_filter) ? urlencode($foreign_filter) : '') .
+ '&amp;',
+ $session_max_rows,
+ $pageNow,
+ $nbTotalPage,
+ 200,
+ 5,
+ 5,
+ 20,
+ 10,
+ $GLOBALS['strPageNumber']
+ );
+ }
+}
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xml:lang="<?php echo $available_languages[$lang][2]; ?>"
+ lang="<?php echo $available_languages[$lang][2]; ?>"
+ dir="<?php echo $text_dir; ?>">
+
+<head>
+ <title>phpMyAdmin</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $charset; ?>" />
+ <link rel="stylesheet" type="text/css"
+ href="phpmyadmin.css.php?<?php echo PMA_generate_common_url('', ''); ?>&amp;js_frame=right&amp;nocache=<?php echo $_SESSION['PMA_Config']->getThemeUniqueValue(); ?>" />
+ <script src="./js/functions.js" type="text/javascript"></script>
+ <script type="text/javascript">
+ //<![CDATA[
+ self.focus();
+ function formupdate(field, key) {
+ if (opener && opener.document && opener.document.insertForm) {
+ var field = 'field_' + field;
+
+ <?php if (isset($pk)) { ?>
+ var element_name = field + '[multi_edit][<?php echo htmlspecialchars($pk); ?>][]';
+ <?php } else { ?>
+ var element_name = field + '[]';
+ <?php } ?>
+
+ <?php if (isset($fieldkey) && is_numeric($fieldkey)) { ?>
+ var element_name_alt = field + '[<?php echo $fieldkey; ?>]';
+ <?php } else { ?>
+ var element_name_alt = field + '[0]';
+ <?php } ?>
+
+ if (opener.document.insertForm.elements[element_name]) {
+ // Edit/Insert form
+ opener.document.insertForm.elements[element_name].value = key;
+ self.close();
+ return false;
+ } else if (opener.document.insertForm.elements[element_name_alt]) {
+ // Search form
+ opener.document.insertForm.elements[element_name_alt].value = key;
+ self.close();
+ return false;
+ }
+ }
+
+ alert('<?php echo PMA_jsFormat($strWindowNotFound); ?>');
+ }
+ //]]>
+ </script>
+</head>
+
+<body id="body_browse_foreigners">
+
+<form action="browse_foreigners.php" method="post">
+<fieldset>
+<?php echo PMA_generate_common_hidden_inputs($db, $table); ?>
+<input type="hidden" name="field" value="<?php echo htmlspecialchars($field); ?>" />
+<input type="hidden" name="fieldkey"
+ value="<?php echo isset($fieldkey) ? htmlspecialchars($fieldkey) : ''; ?>" />
+<?php if (isset($pk)) { ?>
+<input type="hidden" name="pk" value="<?php echo htmlspecialchars($pk); ?>" />
+<?php } ?>
+<span class="formelement">
+ <label for="input_foreign_filter"><?php echo $strSearch . ':'; ?></label>
+ <input type="text" name="foreign_filter" id="input_foreign_filter"
+ value="<?php echo isset($foreign_filter) ? htmlspecialchars($foreign_filter) : ''; ?>" />
+ <input type="submit" name="submit_foreign_filter" value="<?php echo $strGo;?>" />
+</span>
+<span class="formelement">
+ <?php echo $gotopage; ?>
+</span>
+<span class="formelement">
+ <?php echo $showall; ?>
+</span>
+</fieldset>
+</form>
+
+<table width="100%">
+<?php
+if (is_array($foreignData['disp_row'])) {
+ $header = '<tr>
+ <th>' . $strKeyname . '</th>
+ <th>' . $strDescription . '</th>
+ <td width="20%"></td>
+ <th>' . $strDescription . '</th>
+ <th>' . $strKeyname . '</th>
+ </tr>';
+
+ echo '<thead>' . $header . '</thead>' . "\n"
+ .'<tfoot>' . $header . '</tfoot>' . "\n"
+ .'<tbody>' . "\n";
+
+ $values = array();
+ $keys = array();
+ foreach ($foreignData['disp_row'] as $relrow) {
+ if ($foreignData['foreign_display'] != FALSE) {
+ $values[] = $relrow[$foreignData['foreign_display']];
+ } else {
+ $values[] = '';
+ }
+
+ $keys[] = $relrow[$foreignData['foreign_field']];
+ }
+
+ asort($keys);
+
+ $hcount = 0;
+ $odd_row = true;
+ $val_ordered_current_row = 0;
+ $val_ordered_current_equals_data = false;
+ $key_ordered_current_equals_data = false;
+ foreach ($keys as $key_ordered_current_row => $value) {
+ //for ($i = 0; $i < $count; $i++) {
+ $hcount++;
+
+ if ($cfg['RepeatCells'] > 0 && $hcount > $cfg['RepeatCells']) {
+ echo $header;
+ $hcount = 0;
+ $odd_row = true;
+ }
+
+ $key_ordered_current_key = $keys[$key_ordered_current_row];
+ $key_ordered_current_val = $values[$key_ordered_current_row];
+
+ $val_ordered_current_key = $keys[$val_ordered_current_row];
+ $val_ordered_current_val = $values[$val_ordered_current_row];
+
+ $val_ordered_current_row++;
+
+ if (PMA_strlen($val_ordered_current_val) <= $cfg['LimitChars']) {
+ $val_ordered_current_val = htmlspecialchars($val_ordered_current_val);
+ $val_ordered_current_val_title = '';
+ } else {
+ $val_ordered_current_val_title =
+ htmlspecialchars($val_ordered_current_val);
+ $val_ordered_current_val =
+ htmlspecialchars(PMA_substr($val_ordered_current_val, 0,
+ $cfg['LimitChars']) . '...');
+ }
+ if (PMA_strlen($key_ordered_current_val) <= $cfg['LimitChars']) {
+ $key_ordered_current_val = htmlspecialchars($key_ordered_current_val);
+ $key_ordered_current_val_title = '';
+ } else {
+ $key_ordered_current_val_title =
+ htmlspecialchars($key_ordered_current_val);
+ $key_ordered_current_val =
+ htmlspecialchars(PMA_substr($key_ordered_current_val, 0,
+ $cfg['LimitChars']) . '...');
+ }
+
+ if (! empty($data)) {
+ $val_ordered_current_equals_data = $val_ordered_current_key == $data;
+ $key_ordered_current_equals_data = $key_ordered_current_key == $data;
+ }
+
+ ?>
+ <tr class="<?php echo $odd_row ? 'odd' : 'even'; $odd_row = ! $odd_row; ?>">
+ <td nowrap="nowrap">
+ <?php
+ echo ($key_ordered_current_equals_data ? '<strong>' : '')
+ .'<a href="#" title="' . $strUseThisValue
+ . ($key_ordered_current_val_title != '' ? ': ' . $key_ordered_current_val_title : '') . '"'
+ .' onclick="formupdate(\'' . md5($field) . '\', \''
+ . PMA_jsFormat($key_ordered_current_key, false) . '\'); return false;">'
+ .htmlspecialchars($key_ordered_current_key) . '</a>' . ($key_ordered_current_equals_data ? '</strong>' : '');
+ ?></td>
+ <td>
+ <?php
+ echo ($key_ordered_current_equals_data ? '<strong>' : '')
+ . '<a href="#" title="' . $strUseThisValue . ($key_ordered_current_val_title != '' ? ': '
+ . $key_ordered_current_val_title : '') . '" onclick="formupdate(\''
+ . md5($field) . '\', \'' . PMA_jsFormat($key_ordered_current_key, false) . '\'); return false;">'
+ . $key_ordered_current_val . '</a>' . ($key_ordered_current_equals_data ? '</strong>' : '');
+ ?></td>
+ <td width="20%">
+ <img src="<?php echo $GLOBALS['pmaThemeImage'] . 'spacer.png'; ?>"
+ alt="" width="1" height="1"></td>
+
+ <td>
+ <?php
+ echo ($val_ordered_current_equals_data ? '<strong>' : '')
+ . '<a href="#" title="' . $strUseThisValue . ($val_ordered_current_val_title != '' ? ': '
+ . $val_ordered_current_val_title : '') . '" onclick="formupdate(\'' . md5($field)
+ . '\', \'' . PMA_jsFormat($val_ordered_current_key, false) . '\'); return false;">'
+ . $val_ordered_current_val . '</a>' . ($val_ordered_current_equals_data ? '</strong>' : '');
+ ?></td>
+ <td nowrap="nowrap">
+ <?php
+ echo ($val_ordered_current_equals_data ? '<strong>' : '') . '<a href="#" title="'
+ . $strUseThisValue . ($val_ordered_current_val_title != '' ? ': ' . $val_ordered_current_val_title : '')
+ . '" onclick="formupdate(\'' . md5($field) . '\', \''
+ . PMA_jsFormat($val_ordered_current_key, false) . '\'); return false;">' . htmlspecialchars($val_ordered_current_key)
+ . '</a>' . ($val_ordered_current_equals_data ? '</strong>' : '');
+ ?></td>
+ </tr>
+ <?php
+ } // end while
+}
+?>
+</tbody>
+</table>
+
+</body>
+</html>
View
97 bs_change_mime_type.php
@@ -0,0 +1,97 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+ /**
+ * @author Raj Kissu Rajandran
+ * @version 1.0
+ * @package BLOBStreaming
+ */
+ require_once './libraries/common.inc.php';
+
+ /**
+ * @var string contains database name
+ */
+ $bsDB = isset($_REQUEST['bs_db']) ? urldecode($_REQUEST['bs_db']) : NULL;
+
+ /**
+ * @var string contains table name
+ */
+ $bsTable = isset($_REQUEST['bs_table']) ? urldecode($_REQUEST['bs_table']) : NULL;
+
+ /**
+ * @var string contains BLOB reference
+ */
+ $bsReference = isset($_REQUEST['bs_reference']) ? urldecode($_REQUEST['bs_reference']) : NULL;
+
+ /**
+ * @var string contains MIME type
+ */
+ $bsNewMIMEType = isset($_REQUEST['bs_new_mime_type']) ? urldecode($_REQUEST['bs_new_mime_type']) : NULL;
+
+ // necessary variables exist
+ if ($bsDB && $bsTable && $bsReference && $bsNewMIMEType)
+ {
+ // load PMA configuration
+ $PMA_Config = $_SESSION['PMA_Config'];
+
+ // if PMA configuration exists
+ if (!empty($PMA_Config))
+ {
+ // if BS plugins exist
+ if ($PMA_Config->get('BLOBSTREAMING_PLUGINS_EXIST'))
+ {
+ $mybs_ref_tbl = $PMA_Config->get('PBMS_NAME') . '_reference';
+ $mybs_cust_content_type_tbl = $PMA_Config->get('PBMS_NAME') . '_custom_content_type';
+
+ // if specified DB is selected
+ if (PMA_DBI_select_db($bsDB))
+ {
+ $query = "SELECT * FROM " . PMA_backquote($mybs_ref_tbl);
+ $query .= " WHERE Blob_url='" . PMA_sqlAddslashes($bsReference) . "'";
+
+ $result = PMA_DBI_query($query);
+
+ // if record exists
+ if ($data = PMA_DBI_fetch_assoc($result))
+ {
+ $query = "SELECT count(*) FROM " . PMA_backquote($mybs_cust_content_type_tbl);
+ $query .= " WHERE Blob_url='" . PMA_sqlAddslashes($bsReference) . "'";
+
+ $result = PMA_DBI_query($query);
+
+ // if record exists
+ if ($data = PMA_DBI_fetch_assoc($result))
+ {
+ if (1 == $data['count(*)'])
+ {
+ $query = "UPDATE " . PMA_backquote($mybs_cust_content_type_tbl) . " SET Content_type='";
+ $query .= PMA_sqlAddslashes($bsNewMIMEType) . "' WHERE Blob_url='" . PMA_sqlAddslashes($bsReference) . "'";
+ }
+ else
+ {
+ $query = "INSERT INTO " . PMA_backquote($mybs_cust_content_type_tbl) . " (Blob_url, Content_type)";
+ $query .= " VALUES('" . PMA_sqlAddslashes($bsReference) . "', '" . PMA_sqlAddslashes($bsNewMIMEType) . "')";
+ }
+
+ $result = PMA_DBI_query($query);
+
+ // if query execution succeeded
+ if ($result)
+ {
+ // determine redirector page
+ $newLoc = $cfg['PmaAbsoluteUri'] . 'sql.php?' . PMA_generate_common_url ('','', '&') . (isset($bsDB) ? '&db=' . urlencode($bsDB) : '') . (isset($bsTable) ? '&table=' . urlencode($bsTable) : '') . (isset($token) ? '&token=' . urlencode($token) : '') . (isset($goto) ? '&goto=' . urlencode($goto) : '') . '&reload=1&purge=1';
+
+ // redirect to specified page
+ ?>
+ <script>
+ window.location = "<?php echo $newLoc ?>";
+ </script>
+ <?php
+ } // end if ($result)
+ } // end if ($data = PMA_DBI_fetch_assoc($result))
+ } // end if ($data = PMA_DBI_fetch_assoc($result))
+ } // end if (PMA_DBI_select_db($bsDB))
+ } // end if ($PMA_Config->get('BLOBSTREAMING_PLUGINS_EXIST'))
+ } // end if (!empty($PMA_Config))
+ } // end if ($bsDB && $bsTable && $bsReference && $bsNewMIMEType)
+
+?>
View
52 bs_disp_as_mime_type.php
@@ -0,0 +1,52 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * @author Raj Kissu Rajandran
+ * @version 1.0
+ * @package BLOBStreaming
+ */
+
+set_time_limit(0);
+
+$filename = isset($_REQUEST['file_path']) ? $_REQUEST['file_path'] : NULL;
+$c_type = isset($_REQUEST['c_type']) ? $_REQUEST['c_type'] : NULL;
+
+if (isset($filename) && isset($c_type))
+{
+ $hdrs = get_headers($filename, 1);
+
+ if (is_array($hdrs))
+ $f_size = $hdrs['Content-Length'];
+
+ header("Expires: 0");
+ header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
+ header("Cache-Control: no-store, no-cache, must-revalidate");
+ header("Cache-Control: post-check=0, pre-check=0", false);
+ header("Pragma: no-cache");
+ header("Content-type: $c_type");
+ header('Content-length: ' . $f_size);
+ header("Content-disposition: attachment; filename=" . basename($filename));
+
+ $fHnd = fopen($filename, "rb");
+
+ if ($fHnd)
+ {
+ $pos = 0;
+ $content = "";
+
+ while (!feof($fHnd))
+ {
+ $content .= fread($fHnd, $f_size);
+ $pos = strlen($content);
+
+ if ($pos >= $f_size)
+ break;
+ }
+
+ echo $content;
+ flush();
+
+ fclose($fHnd);
+ }
+}
+?>
View
70 bs_play_media.php
@@ -0,0 +1,70 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+ /**
+ * @author Raj Kissu Rajandran
+ * @version 1.0
+ * @package BLOBStreaming
+ */
+ require_once './libraries/common.inc.php';
+
+ /*
+ * @var string contains media type of BLOB reference
+ */
+ $mediaType = isset($_REQUEST['media_type']) ? $_REQUEST['media_type'] : NULL;
+
+ /*
+ * @var string indicates whether media type is of custom type
+ */
+ $customType = isset($_REQUEST['custom_type']) ? $_REQUEST['custom_type'] : false;
+
+ /*
+ * @var string contains BLOB reference
+ */
+ $bsReference = isset($_REQUEST['bs_reference']) ? $_REQUEST['bs_reference'] : NULL;
+
+ // if media type and BS reference are specified
+ if (isset($mediaType) && isset($bsReference))
+ {
+ // load PMA configuration
+ $PMA_Config = $_SESSION['PMA_Config'];
+
+ // if PMA configuration exists
+ if (!empty($PMA_Config))
+ {
+ // retrieve BS server variables from PMA configuration
+ $bs_server = $PMA_Config->get('BLOBSTREAMING_SERVER');
+ $bs_file_path = "http://" . $bs_server . '/' . $bsReference;
+
+ if (isset($customType) && $customType)
+ $bs_file_path = "bs_disp_as_mime_type.php?file_path=" . urlencode($bs_file_path) . "&c_type=" . urlencode($mediaType);
+
+ ?>
+<html>
+ <head>
+ </head>
+ <body>
+ <?php
+
+ // supported media types
+ switch ($mediaType)
+ {
+ // audio content
+ case 'audio/mpeg':
+ ?><embed width=620 height=100 src="<?php echo $bs_file_path; ?>" autostart=true></embed><?php
+ break;
+ // video content
+ case 'application/x-flash-video':
+ case 'video/mpeg':
+ ?><embed width=620 height=460 src="<?php echo $bs_file_path; ?>" autostart=true></embed><?php
+ break;
+ default:
+ // do nothing
+ }
+ ?>
+ </body>
+</html>
+ <?php
+ } // end if (!empty($PMA_Config))
+ } // end if (isset($mediaType) && isset($bsReference))
+
+?>
View
30 calendar.php
@@ -0,0 +1,30 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ *
+ * @version $Id$
+ */
+
+/**
+ *
+ */
+require_once './libraries/common.inc.php';
+require_once './libraries/header_http.inc.php';
+$page_title = $strCalendar;
+require './libraries/header_meta_style.inc.php';
+$GLOBALS['js_include'][] = 'tbl_change.js';
+require './libraries/header_scripts.inc.php';
+?>
+<script type="text/javascript">
+//<![CDATA[
+var month_names = new Array("<?php echo implode('","', $month); ?>");
+var day_names = new Array("<?php echo implode('","', $day_of_week); ?>");
+var submit_text = "<?php echo $strGo . ' (' . $strTime . ')'; ?>";
+//]]>
+</script>
+</head>
+<body onload="initCalendar();">
+<div id="calendar_data"></div>
+<div id="clock_data"></div>
+</body>
+</html>
View
87 changelog.php
@@ -0,0 +1,87 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * Simple script to set correct charset for changelog
+ *
+ * @version $Id$
+ */
+
+$changelog = htmlspecialchars(file_get_contents('ChangeLog'));
+
+$replaces = array(
+ '@(http://[./a-zA-Z0-9.-]*[/a-zA-Z0-9])@'
+ => '<a href="\\1">\\1</a>',
+
+ // sourceforge users
+ '/([0-9]{4}-[0-9]{2}-[0-9]{2}) (.+[^ ]) +&lt;(.*)@users.sourceforge.net&gt;/i'
+ => '\\1 <a href="https://sourceforge.net/users/\\3/">\\2</a>',
+ '/thanks to ([^\(\r\n]+) \(([-\w]+)\)/i'
+ => 'thanks to <a href="https://sourceforge.net/users/\\2/">\\1</a>',
+ '/thanks to ([^\(\r\n]+) -\s+([-\w]+)/i'
+ => 'thanks to <a href="https://sourceforge.net/users/\\2/">\\1</a>',
+
+ // mail adresse
+ '/([0-9]{4}-[0-9]{2}-[0-9]{2}) (.+[^ ]) +&lt;(.*@.*)&gt;/i'
+ => '\\1 <a href="mailto:\\3">\\2</a>',
+
+ // linking patches
+ '/patch\s*#?([0-9]{6,})/i'
+ => '<a href="https://sourceforge.net/support/tracker.php?aid=\\1">patch #\\1</a>',
+
+ // linking RFE
+ '/(?:rfe|feature)\s*#?([0-9]{6,})/i'
+ => '<a href="https://sourceforge.net/support/tracker.php?aid=\\1">RFE #\\1</a>',
+
+ // linking files
+ '/(\s+)([\\/a-z_0-9\.]+\.(?:php3?|html|pl|js|sh))/i'
+ => '\\1<a href="http://phpmyadmin.svn.sourceforge.net/viewvc/phpmyadmin/trunk/phpMyAdmin/\\2?annotate=HEAD">\\2</a>',
+
+ // FAQ entries
+ '/FAQ ([0-9]+)\.([0-9a-z]+)/i'
+ => '<a href="http://localhost/phpMyAdmin/Documentation.html#faq\\1_\\2">FAQ \\1.\\2</a>',
+
+ // linking bugs
+ '/bug\s*#?([0-9]{6,})/i'
+ => '<a href="https://sourceforge.net/support/tracker.php?aid=\\1">bug #\\1</a>',
+
+ // all other 6+ digit numbers are treated as bugs
+ '/(?<!BUG|RFE|patch) #?([0-9]{6,})/i'
+ => ' <a href="https://sourceforge.net/support/tracker.php?aid=\\1">bug #\\1</a>',
+
+ // CVE/CAN entries
+ '/((CAN|CVE)-[0-9]+-[0-9]+)/'
+ => '<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=\\1">\\1</a>',
+
+ // Highlight releases (with links)
+ '/(( ### )(([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+) (.*)))/'
+ => '<a name="\\4_\\5_\\6_\\7"></a>\\2<a href="http://svn.sourceforge.net/viewvc/phpmyadmin/tags/RELEASE_\\4_\\5_\\6_\\7/phpMyAdmin">\\4.\\5.\\6.\\7 \\8</a>',
+ '/(( ### )(([0-9]+)\.([0-9]+)\.([0-9]+) (.*)))/'
+ => '<a name="\\4_\\5_\\6_\\7"></a>\\2<a href="http://svn.sourceforge.net/viewvc/phpmyadmin/tags/RELEASE_\\4_\\5_\\6/phpMyAdmin">\\4.\\5.\\6 \\7</a>',
+
+ // Highlight releases (not linkable)
+ '/( ### )(.*)/'
+ => '\\1<b>\\2</b>',
+
+);
+
+header('Content-type: text/html; charset=utf-8');
+echo '<?xml version="1.0" encoding="utf-8"?'.'>';
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
+<head>
+<link rel="icon" href="./favicon.ico" type="image/x-icon" />
+<link rel="shortcut icon" href="./favicon.ico" type="image/x-icon" />
+<title>phpMyAdmin - ChangeLog</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+</head>
+<body>
+<h1>phpMyAdmin - ChangeLog</h1>
+<?php
+echo '<pre>';
+echo preg_replace(array_keys($replaces), $replaces, $changelog);
+echo '</pre>';
+?>
+</body>
+</html>
View
26 chk_rel.php
@@ -0,0 +1,26 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ *
+ * @version $Id$
+ */
+
+/**
+ * Gets some core libraries
+ */
+require_once './libraries/common.inc.php';
+require_once './libraries/db_common.inc.php';
+require_once './libraries/relation.lib.php';
+
+
+/**
+ * Gets the relation settings
+ */
+$cfgRelation = PMA_getRelationsParam(TRUE);
+
+
+/**
+ * Displays the footer
+ */
+require_once './libraries/footer.inc.php';
+?>
View
69 config.sample.inc.php
@@ -0,0 +1,69 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * phpMyAdmin sample configuration, you can use it as base for
+ * manual configuration. For easier setup you can use setup/
+ *
+ * All directives are explained in Documentation.html and on phpMyAdmin
+ * wiki <http://wiki.cihar.com>.
+ *
+ * @version $Id$
+ */
+
+/*
+ * This is needed for cookie based authentication to encrypt password in
+ * cookie
+ */
+$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
+
+/*
+ * Servers configuration
+ */
+$i = 0;
+
+/*
+ * First server
+ */
+$i++;
+/* Authentication type */
+$cfg['Servers'][$i]['auth_type'] = 'cookie';
+/* Server parameters */
+$cfg['Servers'][$i]['host'] = 'localhost';
+$cfg['Servers'][$i]['connect_type'] = 'tcp';
+$cfg['Servers'][$i]['compress'] = false;
+/* Select mysqli if your server has it */
+$cfg['Servers'][$i]['extension'] = 'mysql';
+
+/* rajk - for blobstreaming */
+$cfg['Servers'][$i]['bs_garbage_threshold'] = 50;
+$cfg['Servers'][$i]['bs_repository_threshold'] = '32M';
+$cfg['Servers'][$i]['bs_temp_blob_timeout'] = 600;
+$cfg['Servers'][$i]['bs_temp_log_threshold'] = '32M';
+
+/* User for advanced features */
+// $cfg['Servers'][$i]['controluser'] = 'pma';
+// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
+/* Advanced phpMyAdmin features */
+// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
+// $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
+// $cfg['Servers'][$i]['relation'] = 'pma_relation';
+// $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
+// $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
+// $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
+// $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
+// $cfg['Servers'][$i]['history'] = 'pma_history';
+// $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
+/* Contrib / Swekey authentication */
+// $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf';
+
+/*
+ * End of servers configuration
+ */
+
+/*
+ * Directories for saving/loading files from server
+ */
+$cfg['UploadDir'] = '';
+$cfg['SaveDir'] = '';
+
+?>
View
12 contrib/README
@@ -0,0 +1,12 @@
+$Id$
+
+This directory contains various stuff contributed by users that might be
+useful to other. There is no guarantee it will work for you.
+
+Current content of this directory:
+
+packaging - Contains files needed for creating packages for various
+ distributions. Please prefer official packages from your vendor if
+ possible.
+
+vim: expandtab ts=4 sw=4 sts=4 tw=78
View
12 contrib/packaging/Fedora/phpMyAdmin-http.conf
@@ -0,0 +1,12 @@
+#
+# MySQL server administration.
+#
+Alias /phpMyAdmin /var/www/myadmin
+
+<Directory /var/www/myadmin>
+ DirectoryIndex index.php
+ Options Indexes Includes ExecCGI
+ AllowOverride None
+ Order deny,allow
+ Allow from all
+</Directory>
View
163 contrib/packaging/Fedora/phpMyAdmin.spec
@@ -0,0 +1,163 @@
+%define _myadminpath /var/www/myadmin
+%define pkgrelease rc1
+%define microrelease 1
+
+Name: phpMyAdmin
+Version: 2.8.0
+Release: %{pkgrelease}.%{microrelease}
+License: GPL
+Group: Applications/Databases/Interfaces
+Source0: http://prdownloads.sourceforge.net/phpmyadmin/%{name}-%{version}-%{pkgrelease}.tar.bz2
+Source1: phpMyAdmin-http.conf
+URL: http://sourceforge.net/projects/phpmyadmin/
+Requires: mysql
+Requires: php-mysql
+Buildarch: noarch
+BuildRoot: %{_tmppath}/%{name}-root
+
+Summary: phpMyAdmin - web-based MySQL administration
+
+%description
+phpMyAdmin can manage a whole MySQL-server (needs a super-user) but
+also a single database. To accomplish the latter you'll need a
+properly set up MySQL-user which can read/write only the desired
+database. It's up to you to look up the appropiate part in the MySQL
+manual. Currently phpMyAdmin can:
+ - create and drop databases
+ - create, copy, drop and alter tables
+ - delete, edit and add fields
+ - execute any SQL-statement, even batch-queries
+ - manage keys on fields
+ - load text files into tables
+ - create (*) and read dumps of tables
+ - export (*) and import data to CSV values
+ - administer multiple servers and single databases
+ - check referencial integrity
+ - create complex queries automatically connecting required tables
+ - create PDF graphics of your database layout
+ - communicate in more than 38 different languages
+
+
+%prep
+%setup -q -n %{name}-%{version}-%{pkgrelease}
+
+
+%build
+
+
+%install
+[ "${RPM_BUILD_ROOT}" != "/" ] && [ -d "${RPM_BUILD_ROOT}" ] && \
+ rm -rf "${RPM_BUILD_ROOT}"
+
+# Create directories.
+
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/{css,js,lang,libraries,themes}
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/libraries/{auth,dbg,dbi,engines}
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/libraries/{export,tcpdf,import}
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/libraries/transformations
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/libraries/tcpdf/font
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/themes/{darkblue_orange,original}
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/themes/darkblue_orange/{css,img}
+install -d "${RPM_BUILD_ROOT}%{_myadminpath}"/themes/original/{css,img}
+
+# Install files.
+
+install libraries/config.default.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}"/config.inc.php
+install *.{php,ico} "${RPM_BUILD_ROOT}%{_myadminpath}"/
+install ChangeLog LICENSE README "${RPM_BUILD_ROOT}%{_myadminpath}"/
+install Documentation.html docs.css "${RPM_BUILD_ROOT}%{_myadminpath}"/
+install css/* "${RPM_BUILD_ROOT}%{_myadminpath}/css"/
+install js/* "${RPM_BUILD_ROOT}%{_myadminpath}/js"/
+install lang/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/lang"/
+install libraries/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/libraries"/
+install libraries/auth/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/auth"/
+install libraries/dbg/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/dbg"/
+install libraries/dbi/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/dbi"/
+install libraries/engines/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/engines"/
+install libraries/export/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/export"/
+install libraries/tcpdf/*.php "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/tcpdf"/
+install libraries/tcpdf/font/*.{php,z} \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/tcpdf/font"/
+install libraries/import/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/import"/
+install libraries/transformations/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/libraries/transformations"/
+install themes/darkblue_orange/*.{php,png} \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/darkblue_orange"/
+install themes/darkblue_orange/css/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/darkblue_orange/css"/
+install themes/darkblue_orange/img/*.{png,ico} \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/darkblue_orange/img"/
+install themes/original/*.{php,png} \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/original"/
+install themes/original/css/*.php \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/original/css"/
+install themes/original/img/*.{png,ico} \
+ "${RPM_BUILD_ROOT}%{_myadminpath}/themes/original/img"/
+
+# Create documentation directories.
+
+DOCROOT="${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}"
+install -d "${DOCROOT}"
+install -d "${DOCROOT}"/{lang,scripts,transformations}
+
+# Install documentation files.
+
+install RELEASE-DATE-* "${DOCROOT}"/
+install CREDITS ChangeLog INSTALL LICENSE "${DOCROOT}"/
+install README TODO "${DOCROOT}"/
+install Documentation.* docs.css "${DOCROOT}"/
+install translators.html "${DOCROOT}"/
+install lang/*.sh "${DOCROOT}"/lang/
+install scripts/* "${DOCROOT}"/scripts/
+install libraries/tcpdf/README "${DOCROOT}"/README.tcpdf
+install libraries/import/README "${DOCROOT}"/README.import
+install libraries/transformations/README "${DOCROOT}"/transformations/
+install libraries/transformations/TEMPLATE* "${DOCROOT}"/transformations/
+install libraries/transformations/*.sh "${DOCROOT}"/transformations/
+
+# Install configuration file for Apache.
+
+install -d "${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d"
+install "%{SOURCE1}" \
+ "${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d/phpMyAdmin.conf"
+
+# Generate non-configuration file list.
+
+(cd "${RPM_BUILD_ROOT}"; ls -d ."%{_myadminpath}"/*) |
+ sed -e '/\/config\.inc\.php$/d' -e 's/^.//' > files.list
+
+
+
+%clean
+[ "${RPM_BUILD_ROOT}" != "/" ] && [ -d "${RPM_BUILD_ROOT}" ] && \
+ rm -rf "${RPM_BUILD_ROOT}"
+
+
+%files -f files.list
+%defattr(644, root, root, 755)
+%doc %{_docdir}/%{name}-%{version}
+%dir %{_myadminpath}
+%attr(640,root,apache) %config(noreplace) %verify(not size mtime md5) %{_myadminpath}/config.inc.php
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/httpd/conf.d/*
+
+
+%changelog
+* Thu Feb 23 2006 Patrick Monnerat <pm@datasphere.ch>
+- Version 2.8.0-rc1.1.
+
+* Thu Dec 22 2005 Patrick Monnerat <patrick.monnerat@econophone.ch>
+- Path "nullpw" to allow trying connection with null password after failure.
+- Version 2.7.0-pl1.1.
+
+* Mon Aug 22 2005 Patrick Monnerat <patrick.monnerat@econophone.ch>
+- Version 2.6.3-pl1.
+
+* Wed Jul 21 2004 Patrick Monnerat <patrick.monnerat@econophone.ch>
+- Version 2.5.7-pl1.
+
+* Fri Nov 22 2002 Patrick Monnerat <patrick.monnerat@econophone.ch>
+- Version 2.3.0-rc1.
View
44 contrib/swekey.sample.conf
@@ -0,0 +1,44 @@
+# This is a typical file used to enable Swekey hardware authentication.
+#
+# To activate the Swekey authentication add the following line to your config.inc.php file.
+# $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf';
+# Then rename this file "swekey-pma.conf" and copy it to the /etc directory.
+# Add all the Swekey ids you want to grant access to in the file.
+# After each Swekey id put the corresponding user name.
+#
+# If you don't know the id of a Swekey just visit http://www.swekey.com?sel=support
+# while your Swekey is connected.
+#
+# If you need to purchase a Swekey please visit http://phpmyadmin.net/auth_key
+# since this link provides funding to PhpMyAdmin.
+#
+
+0000000000000000000000000000763A:root
+000000000000000000000000000089E4:steve
+0000000000000000000000000000231E:scott
+
+#
+# It is recommended to include the following lines to contact the
+# authentication servers in SSL mode.
+#
+
+SERVER_CHECK=https://auth-check-ssl.musbe.net
+SERVER_RNDTOKEN=https://auth-rnd-gen-ssl.musbe.net
+SERVER_STATUS=https://auth-status-ssl.musbe.net
+
+#
+# The path of the root certificate file used to ensure a secure
+# communication with the authentication servers in SSL mode.
+# If not specified, will use musbe-ca.crt found in your
+# phpMyAdmin/libraries/auth/swekey.
+#
+
+#CA_FILE=/var/http-root/phpmyadmin/libraries/auth/swekey/musbe-ca.crt
+
+#
+# If your server receives many login requests, you can enable the random
+# token caching to accelerate the authentication process.
+# Token caching is enabled by default.
+#
+
+#ENABLE_TOKEN_CACHE=0
View
52 db_create.php
@@ -0,0 +1,52 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ *
+ * @version $Id$
+ */
+
+/**
+ * Gets some core libraries
+ */
+require_once './libraries/common.inc.php';
+$GLOBALS['js_include'][] = 'functions.js';
+require_once './libraries/mysql_charsets.lib.php';
+
+PMA_checkParameters(array('new_db'));
+
+/**
+ * Defines the url to return to in case of error in a sql statement
+ */
+$err_url = 'main.php?' . PMA_generate_common_url();
+
+/**
+ * Builds and executes the db creation sql query
+ */
+$sql_query = 'CREATE DATABASE ' . PMA_backquote($new_db);
+if (!empty($db_collation)) {
+ list($db_charset) = explode('_', $db_collation);
+ if (in_array($db_charset, $mysql_charsets) && in_array($db_collation, $mysql_collations[$db_charset])) {
+ $sql_query .= ' DEFAULT' . PMA_generateCharsetQueryPart($db_collation);
+ }
+ unset($db_charset, $db_collation);
+}
+$sql_query .= ';';
+
+$result = PMA_DBI_try_query($sql_query);
+
+if (! $result) {
+ $message = PMA_Message::rawError(PMA_DBI_getError());
+ // avoid displaying the not-created db name in header or navi panel
+ $GLOBALS['db'] = '';
+ $GLOBALS['table'] = '';
+ require_once './libraries/header.inc.php';
+ require_once './main.php';
+} else {
+ $message = PMA_Message::success('strDatabaseHasBeenCreated');
+ $message->addParam($new_db);
+ $GLOBALS['db'] = $new_db;
+
+ require_once './libraries/header.inc.php';
+ require_once './' . $cfg['DefaultTabDatabase'];
+}
+?>
View
327 db_datadict.php
@@ -0,0 +1,327 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ *
+ * @version $Id$
+ */
+
+/**
+ * Gets the variables sent or posted to this script, then displays headers
+ */
+require_once './libraries/common.inc.php';
+
+if (!isset($selected_tbl)) {