openupload-svn-update Mailing List for Open Upload (Page 3)
Status: Beta
Brought to you by:
tsdogs
You can subscribe to this list here.
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(100) |
Nov
(72) |
Dec
(44) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2009 |
Jan
(7) |
Feb
(47) |
Mar
(30) |
Apr
(11) |
May
(10) |
Jun
(8) |
Jul
(1) |
Aug
(22) |
Sep
|
Oct
|
Nov
(13) |
Dec
|
| 2010 |
Jan
|
Feb
|
Mar
(17) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(10) |
Dec
(1) |
| 2011 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
| 2012 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <ts...@us...> - 2009-08-29 10:58:35
|
Revision: 347
http://openupload.svn.sourceforge.net/openupload/?rev=347&view=rev
Author: tsdogs
Date: 2009-08-29 10:58:27 +0000 (Sat, 29 Aug 2009)
Log Message:
-----------
Add index.html for control to directory listing.
Added Paths:
-----------
trunk/lib/index.html
trunk/lib/modules/auth/index.html
trunk/lib/modules/db/index.html
trunk/lib/modules/default/index.html
trunk/lib/modules/index.html
trunk/lib/modules/tr/index.html
trunk/lib/smarty/configs/index.html
trunk/lib/smarty/index.html
trunk/lib/smarty/internals/index.html
trunk/lib/smarty/plugins/index.html
trunk/lib/smarty_plugins/index.html
Added: trunk/lib/index.html
===================================================================
--- trunk/lib/index.html (rev 0)
+++ trunk/lib/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/modules/auth/index.html
===================================================================
--- trunk/lib/modules/auth/index.html (rev 0)
+++ trunk/lib/modules/auth/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/modules/db/index.html
===================================================================
--- trunk/lib/modules/db/index.html (rev 0)
+++ trunk/lib/modules/db/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/modules/default/index.html
===================================================================
--- trunk/lib/modules/default/index.html (rev 0)
+++ trunk/lib/modules/default/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/modules/index.html
===================================================================
--- trunk/lib/modules/index.html (rev 0)
+++ trunk/lib/modules/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/modules/tr/index.html
===================================================================
--- trunk/lib/modules/tr/index.html (rev 0)
+++ trunk/lib/modules/tr/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/smarty/configs/index.html
===================================================================
--- trunk/lib/smarty/configs/index.html (rev 0)
+++ trunk/lib/smarty/configs/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/smarty/index.html
===================================================================
--- trunk/lib/smarty/index.html (rev 0)
+++ trunk/lib/smarty/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/smarty/internals/index.html
===================================================================
--- trunk/lib/smarty/internals/index.html (rev 0)
+++ trunk/lib/smarty/internals/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/smarty/plugins/index.html
===================================================================
--- trunk/lib/smarty/plugins/index.html (rev 0)
+++ trunk/lib/smarty/plugins/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
Added: trunk/lib/smarty_plugins/index.html
===================================================================
--- trunk/lib/smarty_plugins/index.html (rev 0)
+++ trunk/lib/smarty_plugins/index.html 2009-08-29 10:58:27 UTC (rev 347)
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>NO ACCESS</title>
+<meta http-equiv="REFRESH" content="0;url=../"></HEAD>
+<BODY>
+No direct access is allowed on this folder.
+</BODY>
+</HTML>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-29 08:43:03
|
Revision: 346
http://openupload.svn.sourceforge.net/openupload/?rev=346&view=rev
Author: tsdogs
Date: 2009-08-29 08:42:52 +0000 (Sat, 29 Aug 2009)
Log Message:
-----------
Upgrade smarty version to 2.6.26
Modified Paths:
--------------
trunk/lib/smarty/Config_File.class.php
trunk/lib/smarty/Smarty.class.php
trunk/lib/smarty/Smarty_Compiler.class.php
trunk/lib/smarty/internals/core.assign_smarty_interface.php
trunk/lib/smarty/internals/core.display_debug_console.php
trunk/lib/smarty/internals/core.write_cache_file.php
trunk/lib/smarty/plugins/block.textformat.php
trunk/lib/smarty/plugins/compiler.assign.php
trunk/lib/smarty/plugins/function.assign_debug_info.php
trunk/lib/smarty/plugins/function.config_load.php
trunk/lib/smarty/plugins/function.counter.php
trunk/lib/smarty/plugins/function.cycle.php
trunk/lib/smarty/plugins/function.debug.php
trunk/lib/smarty/plugins/function.eval.php
trunk/lib/smarty/plugins/function.fetch.php
trunk/lib/smarty/plugins/function.html_checkboxes.php
trunk/lib/smarty/plugins/function.html_image.php
trunk/lib/smarty/plugins/function.html_options.php
trunk/lib/smarty/plugins/function.html_radios.php
trunk/lib/smarty/plugins/function.html_select_date.php
trunk/lib/smarty/plugins/function.html_select_time.php
trunk/lib/smarty/plugins/function.html_table.php
trunk/lib/smarty/plugins/function.mailto.php
trunk/lib/smarty/plugins/function.math.php
trunk/lib/smarty/plugins/function.popup.php
trunk/lib/smarty/plugins/function.popup_init.php
trunk/lib/smarty/plugins/modifier.capitalize.php
trunk/lib/smarty/plugins/modifier.cat.php
trunk/lib/smarty/plugins/modifier.count_characters.php
trunk/lib/smarty/plugins/modifier.count_paragraphs.php
trunk/lib/smarty/plugins/modifier.count_sentences.php
trunk/lib/smarty/plugins/modifier.count_words.php
trunk/lib/smarty/plugins/modifier.date_format.php
trunk/lib/smarty/plugins/modifier.debug_print_var.php
trunk/lib/smarty/plugins/modifier.default.php
trunk/lib/smarty/plugins/modifier.escape.php
trunk/lib/smarty/plugins/modifier.indent.php
trunk/lib/smarty/plugins/modifier.lower.php
trunk/lib/smarty/plugins/modifier.nl2br.php
trunk/lib/smarty/plugins/modifier.regex_replace.php
trunk/lib/smarty/plugins/modifier.replace.php
trunk/lib/smarty/plugins/modifier.spacify.php
trunk/lib/smarty/plugins/modifier.string_format.php
trunk/lib/smarty/plugins/modifier.strip.php
trunk/lib/smarty/plugins/modifier.strip_tags.php
trunk/lib/smarty/plugins/modifier.truncate.php
trunk/lib/smarty/plugins/modifier.upper.php
trunk/lib/smarty/plugins/modifier.wordwrap.php
trunk/lib/smarty/plugins/outputfilter.trimwhitespace.php
trunk/lib/smarty/plugins/shared.escape_special_chars.php
trunk/lib/smarty/plugins/shared.make_timestamp.php
Added Paths:
-----------
trunk/lib/smarty/COPYING.lib
trunk/lib/smarty/README
Added: trunk/lib/smarty/COPYING.lib
===================================================================
--- trunk/lib/smarty/COPYING.lib (rev 0)
+++ trunk/lib/smarty/COPYING.lib 2009-08-29 08:42:52 UTC (rev 346)
@@ -0,0 +1,458 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+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 and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, 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 library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete 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 distribute a copy of this License along with the
+Library.
+
+ 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 Library or any portion
+of it, thus forming a work based on the Library, 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) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+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 Library, 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 Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you 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.
+
+ If distribution of 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 satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be 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.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library 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.
+
+ 9. 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 Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+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 with
+this License.
+
+ 11. 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 Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library 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 Library.
+
+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.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library 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.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser 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 Library
+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 Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+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
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "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
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. 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 LIBRARY 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
+LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
Modified: trunk/lib/smarty/Config_File.class.php
===================================================================
--- trunk/lib/smarty/Config_File.class.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/Config_File.class.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -17,15 +17,19 @@
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
- * @link http://smarty.php.net/
- * @version 2.6.20
+ * For questions, help, comments, discussion, etc., please join the
+ * Smarty mailing list. Send a blank e-mail to
+ * sma...@go...
+ *
+ * @link http://www.smarty.net/
+ * @version 2.6.26
* @copyright Copyright: 2001-2005 New Digital Group, Inc.
* @author Andrei Zmievski <an...@ph...>
* @access public
* @package Smarty
*/
-/* $Id: Config_File.class.php 2702 2007-03-08 19:11:22Z mohrt $ */
+/* $Id: Config_File.class.php 3149 2009-05-23 20:59:25Z monte.ohrt $ */
/**
* Config file reading class
Added: trunk/lib/smarty/README
===================================================================
--- trunk/lib/smarty/README (rev 0)
+++ trunk/lib/smarty/README 2009-08-29 08:42:52 UTC (rev 346)
@@ -0,0 +1,86 @@
+
+NAME:
+
+ Smarty - the PHP compiling template engine
+
+VERSION: 2.6.26
+
+AUTHORS:
+
+ Monte Ohrt <monte at ohrt dot com>
+ Andrei Zmievski <an...@ph...>
+
+MAILING LISTS:
+
+ We have a few mailing lists. "discussion" for you to share your ideas or ask
+ questions, "developers" for those interested in the development efforts of Smarty,
+ and "svn" for those that would like to track the updates made in the svn
+ repository.
+
+ send a blank e-mail message to:
+ sma...@go...(subscribe to the general discussion list)
+ sma...@go... (unsubscribe from the general discussion list)
+ sma...@go... (subscribe to digest)
+ sma...@go... (unsubscribe from digest)
+ sma...@go... (subscribe to the dev list)
+ sma...@go... (unsubscribe from the dev list)
+ sma...@go... (subscribe to the svn list)
+ sma...@go... (unsubscribe from the svn list)
+
+ You can also browse the mailing list archives at
+ http://groups.google.com/group/smarty-discussion
+ http://groups.google.com/group/smarty-developers
+
+ and the OLD list archives at
+ http://marc.theaimsgroup.com/?l=smarty&r=1&w=2
+
+SYNOPSIS:
+
+ require("Smarty.class.php");
+
+ $smarty = new Smarty;
+
+ $smarty->assign("Title","My Homepage");
+ $smarty->assign("Names",array("John","Gary","Gregg","James"));
+
+ $smarty->display("index.tpl");
+
+
+DESCRIPTION:
+
+ What is Smarty?
+
+ Smarty is a template engine for PHP. Many other template engines for PHP
+ provide basic variable substitution and dynamic block functionality.
+ Smarty takes a step further to be a "smart" template engine, adding
+ features such as configuration files, template functions, and variable
+ modifiers, and making all of this functionality as easy as possible to
+ use for both programmers and template designers. Smarty also converts
+ the templates into PHP scripts, eliminating the need to parse the
+ templates on every invocation. This makes Smarty extremely scalable and
+ manageable for large application needs.
+
+ Some of Smarty's features:
+
+ * it is extremely fast
+ * no template parsing overhead, only compiles once.
+ * it is smart about recompiling only the template files that have
+ changed.
+ * the template language is remarkably extensible via the plugin
+ architecture.
+ * configurable template delimiter tag syntax, so you can use
+ {}, {{}}, <!--{}-->, or whatever you like.
+ * built-in caching of template output.
+ * arbitrary template sources (filesystem, databases, etc.)
+ * template if/elseif/else/endif constructs are passed to the PHP parser,
+ so the if syntax can be as simple or as complex as you like.
+ * unlimited nesting of sections, conditionals, etc. allowed
+ * it is possible to embed PHP code right in your template files,
+ although not recommended and doubtfully needed since the engine
+ is so customizable.
+ * and many more.
+
+COPYRIGHT:
+ Copyright (c) 2001-2005 New Digital Group, Inc. All rights reserved.
+ This software is released under the GNU Lesser General Public License.
+ Please read the disclaimer at the top of the Smarty.class.php file.
Modified: trunk/lib/smarty/Smarty.class.php
===================================================================
--- trunk/lib/smarty/Smarty.class.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/Smarty.class.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -20,17 +20,17 @@
*
* For questions, help, comments, discussion, etc., please join the
* Smarty mailing list. Send a blank e-mail to
- * sma...@li...
+ * sma...@go...
*
- * @link http://smarty.php.net/
+ * @link http://www.smarty.net/
* @copyright 2001-2005 New Digital Group, Inc.
* @author Monte Ohrt <monte at ohrt dot com>
* @author Andrei Zmievski <an...@ph...>
* @package Smarty
- * @version 2.6.20
+ * @version 2.6.26
*/
-/* $Id: Smarty.class.php 2722 2007-06-18 14:29:00Z danilo $ */
+/* $Id: Smarty.class.php 3163 2009-06-17 14:39:24Z monte.ohrt $ */
/**
* DIR_SEP isn't used anymore, but third party apps might
@@ -107,7 +107,7 @@
/**
* When set, smarty does uses this value as error_reporting-level.
*
- * @var boolean
+ * @var integer
*/
var $error_reporting = null;
@@ -236,7 +236,8 @@
'INCLUDE_ANY' => false,
'PHP_TAGS' => false,
'MODIFIER_FUNCS' => array('count'),
- 'ALLOW_CONSTANTS' => false
+ 'ALLOW_CONSTANTS' => false,
+ 'ALLOW_SUPER_GLOBALS' => true
);
/**
@@ -464,7 +465,7 @@
*
* @var string
*/
- var $_version = '2.6.20';
+ var $_version = '2.6.26';
/**
* current template inclusion depth
@@ -1548,7 +1549,7 @@
$params['source_content'] = $this->_read_file($_resource_name);
}
$params['resource_timestamp'] = filemtime($_resource_name);
- $_return = is_file($_resource_name);
+ $_return = is_file($_resource_name) && is_readable($_resource_name);
break;
default:
@@ -1711,7 +1712,7 @@
*/
function _read_file($filename)
{
- if ( file_exists($filename) && ($fd = @fopen($filename, 'rb')) ) {
+ if ( file_exists($filename) && is_readable($filename) && ($fd = @fopen($filename, 'rb')) ) {
$contents = '';
while (!feof($fd)) {
$contents .= fread($fd, 8192);
@@ -1950,7 +1951,7 @@
return $function;
}
}
-
+
/**#@-*/
}
Modified: trunk/lib/smarty/Smarty_Compiler.class.php
===================================================================
--- trunk/lib/smarty/Smarty_Compiler.class.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/Smarty_Compiler.class.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -21,12 +21,12 @@
* @link http://smarty.php.net/
* @author Monte Ohrt <monte at ohrt dot com>
* @author Andrei Zmievski <an...@ph...>
- * @version 2.6.20
+ * @version 2.6.26
* @copyright 2001-2005 New Digital Group, Inc.
* @package Smarty
*/
-/* $Id: Smarty_Compiler.class.php 2773 2008-08-12 18:17:51Z Uwe.Tews $ */
+/* $Id: Smarty_Compiler.class.php 3163 2009-06-17 14:39:24Z monte.ohrt $ */
/**
* Template compiling class
@@ -2047,27 +2047,57 @@
break;
case 'get':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_GET' : "\$GLOBALS['HTTP_GET_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_GET";
break;
case 'post':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_POST' : "\$GLOBALS['HTTP_POST_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_POST";
break;
case 'cookies':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_COOKIE' : "\$GLOBALS['HTTP_COOKIE_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_COOKIE";
break;
case 'env':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_ENV' : "\$GLOBALS['HTTP_ENV_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_ENV";
break;
case 'server':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_SERVER' : "\$GLOBALS['HTTP_SERVER_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_SERVER";
break;
case 'session':
- $compiled_ref = ($this->request_use_auto_globals) ? '$_SESSION' : "\$GLOBALS['HTTP_SESSION_VARS']";
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
+ $compiled_ref = "\$_SESSION";
break;
/*
@@ -2075,8 +2105,13 @@
* compiler.
*/
case 'request':
+ if ($this->security && !$this->security_settings['ALLOW_SUPER_GLOBALS']) {
+ $this->_syntax_error("(secure mode) super global access not permitted",
+ E_USER_WARNING, __FILE__, __LINE__);
+ return;
+ }
if ($this->request_use_auto_globals) {
- $compiled_ref = '$_REQUEST';
+ $compiled_ref = "\$_REQUEST";
break;
} else {
$this->_init_smarty_vars = true;
Modified: trunk/lib/smarty/internals/core.assign_smarty_interface.php
===================================================================
--- trunk/lib/smarty/internals/core.assign_smarty_interface.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/internals/core.assign_smarty_interface.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,8 +8,8 @@
/**
* Smarty assign_smarty_interface core plugin
*
- * Type: core
- * Name: assign_smarty_interface
+ * Type: core<br>
+ * Name: assign_smarty_interface<br>
* Purpose: assign the $smarty interface variable
* @param array Format: null
* @param Smarty
Modified: trunk/lib/smarty/internals/core.display_debug_console.php
===================================================================
--- trunk/lib/smarty/internals/core.display_debug_console.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/internals/core.display_debug_console.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,8 +8,8 @@
/**
* Smarty debug_console function plugin
*
- * Type: core
- * Name: display_debug_console
+ * Type: core<br>
+ * Name: display_debug_console<br>
* Purpose: display the javascript debug console window
* @param array Format: null
* @param Smarty
Modified: trunk/lib/smarty/internals/core.write_cache_file.php
===================================================================
--- trunk/lib/smarty/internals/core.write_cache_file.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/internals/core.write_cache_file.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -68,7 +68,7 @@
if (!empty($smarty->cache_handler_func)) {
// use cache_handler function
call_user_func_array($smarty->cache_handler_func,
- array('write', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null));
+ array('write', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], $smarty->_cache_info['expires']));
} else {
// use local cache file
Modified: trunk/lib/smarty/plugins/block.textformat.php
===================================================================
--- trunk/lib/smarty/plugins/block.textformat.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/block.textformat.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,10 +8,10 @@
/**
* Smarty {textformat}{/textformat} block plugin
*
- * Type: block function
- * Name: textformat
+ * Type: block function<br>
+ * Name: textformat<br>
* Purpose: format text a certain way with preset styles
- * or custom wrap/indent settings
+ * or custom wrap/indent settings<br>
* @link http://smarty.php.net/manual/en/language.function.textformat.php {textformat}
* (Smarty online manual)
* @param array
Modified: trunk/lib/smarty/plugins/compiler.assign.php
===================================================================
--- trunk/lib/smarty/plugins/compiler.assign.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/compiler.assign.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,8 +8,8 @@
/**
* Smarty {assign} compiler function plugin
*
- * Type: compiler function
- * Name: assign
+ * Type: compiler function<br>
+ * Name: assign<br>
* Purpose: assign a value to a template variable
* @link http://smarty.php.net/manual/en/language.custom.functions.php#LANGUAGE.FUNCTION.ASSIGN {assign}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.assign_debug_info.php
===================================================================
--- trunk/lib/smarty/plugins/function.assign_debug_info.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.assign_debug_info.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,9 +8,9 @@
/**
* Smarty {assign_debug_info} function plugin
*
- * Type: function
- * Name: assign_debug_info
- * Purpose: assign debug info to the template
+ * Type: function<br>
+ * Name: assign_debug_info<br>
+ * Purpose: assign debug info to the template<br>
* @author Monte Ohrt <monte at ohrt dot com>
* @param array unused in this plugin, this plugin uses {@link Smarty::$_config},
* {@link Smarty::$_tpl_vars} and {@link Smarty::$_smarty_debug_info}
Modified: trunk/lib/smarty/plugins/function.config_load.php
===================================================================
--- trunk/lib/smarty/plugins/function.config_load.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.config_load.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,8 +8,8 @@
/**
* Smarty {config_load} function plugin
*
- * Type: function
- * Name: config_load
+ * Type: function<br>
+ * Name: config_load<br>
* Purpose: load config file vars
* @link http://smarty.php.net/manual/en/language.function.config.load.php {config_load}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.counter.php
===================================================================
--- trunk/lib/smarty/plugins/function.counter.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.counter.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty {counter} function plugin
*
- * Type: function
- * Name: counter
+ * Type: function<br>
+ * Name: counter<br>
* Purpose: print out a counter value
* @author Monte Ohrt <monte at ohrt dot com>
* @link http://smarty.php.net/manual/en/language.function.counter.php {counter}
Modified: trunk/lib/smarty/plugins/function.cycle.php
===================================================================
--- trunk/lib/smarty/plugins/function.cycle.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.cycle.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,10 +8,10 @@
/**
* Smarty {cycle} function plugin
*
- * Type: function
- * Name: cycle
- * Date: May 3, 2002
- * Purpose: cycle through given values
+ * Type: function<br>
+ * Name: cycle<br>
+ * Date: May 3, 2002<br>
+ * Purpose: cycle through given values<br>
* Input:
* - name = name of cycle (optional)
* - values = comma separated list of values to cycle,
@@ -24,7 +24,7 @@
* - assign = boolean, assigns to template var instead of
* printed.
*
- * Examples:
+ * Examples:<br>
* <pre>
* {cycle values="#eeeeee,#d0d0d0d"}
* {cycle name=row values="one,two,three" reset=true}
Modified: trunk/lib/smarty/plugins/function.debug.php
===================================================================
--- trunk/lib/smarty/plugins/function.debug.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.debug.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,9 +9,9 @@
/**
* Smarty {debug} function plugin
*
- * Type: function
- * Name: debug
- * Date: July 1, 2002
+ * Type: function<br>
+ * Name: debug<br>
+ * Date: July 1, 2002<br>
* Purpose: popup debug window
* @link http://smarty.php.net/manual/en/language.function.debug.php {debug}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.eval.php
===================================================================
--- trunk/lib/smarty/plugins/function.eval.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.eval.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,9 +9,9 @@
/**
* Smarty {eval} function plugin
*
- * Type: function
- * Name: eval
- * Purpose: evaluate a template variable as a template
+ * Type: function<br>
+ * Name: eval<br>
+ * Purpose: evaluate a template variable as a template<br>
* @link http://smarty.php.net/manual/en/language.function.eval.php {eval}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
Modified: trunk/lib/smarty/plugins/function.fetch.php
===================================================================
--- trunk/lib/smarty/plugins/function.fetch.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.fetch.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty {fetch} plugin
*
- * Type: function
- * Name: fetch
+ * Type: function<br>
+ * Name: fetch<br>
* Purpose: fetch file, web or ftp data and display results
* @link http://smarty.php.net/manual/en/language.function.fetch.php {fetch}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.html_checkboxes.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_checkboxes.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_checkboxes.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,17 +9,17 @@
/**
* Smarty {html_checkboxes} function plugin
*
- * File: function.html_checkboxes.php
- * Type: function
- * Name: html_checkboxes
- * Date: 24.Feb.2003
- * Purpose: Prints out a list of checkbox input types
- * Input:
+ * File: function.html_checkboxes.php<br>
+ * Type: function<br>
+ * Name: html_checkboxes<br>
+ * Date: 24.Feb.2003<br>
+ * Purpose: Prints out a list of checkbox input types<br>
+ * Input:<br>
* - name (optional) - string default "checkbox"
* - values (required) - array
* - options (optional) - associative array
* - checked (optional) - array default not set
- * - separator (optional) - ie <br> or (possibly <br />)
+ * - separator (optional) - ie <br> or
* - output (optional) - the output next to each checkbox
* - assign (optional) - assign the output as an array to this variable
* Examples:
Modified: trunk/lib/smarty/plugins/function.html_image.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_image.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_image.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,11 +9,11 @@
/**
* Smarty {html_image} function plugin
*
- * Type: function
- * Name: html_image
- * Date: Feb 24, 2003
- * Purpose: format HTML tags for the image
- * Input:
+ * Type: function<br>
+ * Name: html_image<br>
+ * Date: Feb 24, 2003<br>
+ * Purpose: format HTML tags for the image<br>
+ * Input:<br>
* - file = file (and path) of image (required)
* - height = image height (optional, default actual height)
* - width = image width (optional, default actual width)
Modified: trunk/lib/smarty/plugins/function.html_options.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_options.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_options.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,9 +9,9 @@
/**
* Smarty {html_options} function plugin
*
- * Type: function
- * Name: html_options
- * Input:
+ * Type: function<br>
+ * Name: html_options<br>
+ * Input:<br>
* - name (optional) - string default "select"
* - values (required if no options supplied) - array
* - options (required if no values supplied) - associative array
Modified: trunk/lib/smarty/plugins/function.html_radios.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_radios.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_radios.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,17 +9,17 @@
/**
* Smarty {html_radios} function plugin
*
- * File: function.html_radios.php
- * Type: function
- * Name: html_radios
- * Date: 24.Feb.2003
- * Purpose: Prints out a list of radio input types
- * Input:
+ * File: function.html_radios.php<br>
+ * Type: function<br>
+ * Name: html_radios<br>
+ * Date: 24.Feb.2003<br>
+ * Purpose: Prints out a list of radio input types<br>
+ * Input:<br>
* - name (optional) - string default "radio"
* - values (required) - array
* - options (optional) - associative array
* - checked (optional) - array default not set
- * - separator (optional) - ie <br> or (possibly <br />)
+ * - separator (optional) - ie <br> or
* - output (optional) - the output next to each radio button
* - assign (optional) - assign the output as an array to this variable
* Examples:
Modified: trunk/lib/smarty/plugins/function.html_select_date.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_select_date.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_select_date.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -8,11 +8,11 @@
/**
* Smarty {html_select_date} plugin
*
- * Type: function
- * Name: html_select_date
+ * Type: function<br>
+ * Name: html_select_date<br>
* Purpose: Prints the dropdowns for date selection.
*
- * ChangeLog:
+ * ChangeLog:<br>
* - 1.0 initial release
* - 1.1 added support for +/- N syntax for begin
* and end year values. (Monte)
Modified: trunk/lib/smarty/plugins/function.html_select_time.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_select_time.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_select_time.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty {html_select_time} function plugin
*
- * Type: function
- * Name: html_select_time
+ * Type: function<br>
+ * Name: html_select_time<br>
* Purpose: Prints the dropdowns for time selection
* @link http://smarty.php.net/manual/en/language.function.html.select.time.php {html_select_time}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.html_table.php
===================================================================
--- trunk/lib/smarty/plugins/function.html_table.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.html_table.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,11 +9,11 @@
/**
* Smarty {html_table} function plugin
*
- * Type: function
- * Name: html_table
- * Date: Feb 17, 2003
- * Purpose: make an html table from an array of data
- * Input:
+ * Type: function<br>
+ * Name: html_table<br>
+ * Date: Feb 17, 2003<br>
+ * Purpose: make an html table from an array of data<br>
+ * Input:<br>
* - loop = array to loop through
* - cols = number of columns, comma separated list of column names
* or array of column names
Modified: trunk/lib/smarty/plugins/function.mailto.php
===================================================================
--- trunk/lib/smarty/plugins/function.mailto.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.mailto.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,12 +9,12 @@
/**
* Smarty {mailto} function plugin
*
- * Type: function
- * Name: mailto
+ * Type: function<br>
+ * Name: mailto<br>
* Date: May 21, 2002
* Purpose: automate mailto address link creation, and optionally
- * encode them.
- * Input:
+ * encode them.<br>
+ * Input:<br>
* - address = e-mail address
* - text = (optional) text to display, default is address
* - encode = (optional) can be one of:
Modified: trunk/lib/smarty/plugins/function.math.php
===================================================================
--- trunk/lib/smarty/plugins/function.math.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.math.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,9 +9,9 @@
/**
* Smarty {math} function plugin
*
- * Type: function
- * Name: math
- * Purpose: handle math computations in template
+ * Type: function<br>
+ * Name: math<br>
+ * Purpose: handle math computations in template<br>
* @link http://smarty.php.net/manual/en/language.function.math.php {math}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
@@ -27,7 +27,8 @@
return;
}
- $equation = $params['equation'];
+ // strip out backticks, not necessary for math
+ $equation = str_replace('`','',$params['equation']);
// make sure parenthesis are balanced
if (substr_count($equation,"(") != substr_count($equation,")")) {
Modified: trunk/lib/smarty/plugins/function.popup.php
===================================================================
--- trunk/lib/smarty/plugins/function.popup.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.popup.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty {popup} function plugin
*
- * Type: function
- * Name: popup
+ * Type: function<br>
+ * Name: popup<br>
* Purpose: make text pop up in windows via overlib
* @link http://smarty.php.net/manual/en/language.function.popup.php {popup}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/function.popup_init.php
===================================================================
--- trunk/lib/smarty/plugins/function.popup_init.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/function.popup_init.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty {popup_init} function plugin
*
- * Type: function
- * Name: popup_init
+ * Type: function<br>
+ * Name: popup_init<br>
* Purpose: initialize overlib
* @link http://smarty.php.net/manual/en/language.function.popup.init.php {popup_init}
* (Smarty online manual)
Modified: trunk/lib/smarty/plugins/modifier.capitalize.php
===================================================================
--- trunk/lib/smarty/plugins/modifier.capitalize.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/modifier.capitalize.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty capitalize modifier plugin
*
- * Type: modifier
- * Name: capitalize
+ * Type: modifier<br>
+ * Name: capitalize<br>
* Purpose: capitalize words in the string
* @link http://smarty.php.net/manual/en/language.modifiers.php#LANGUAGE.MODIFIER.CAPITALIZE
* capitalize (Smarty online manual)
Modified: trunk/lib/smarty/plugins/modifier.cat.php
===================================================================
--- trunk/lib/smarty/plugins/modifier.cat.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/modifier.cat.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty cat modifier plugin
*
- * Type: modifier
- * Name: cat
+ * Type: modifier<br>
+ * Name: cat<br>
* Date: Feb 24, 2003
* Purpose: catenate a value to a variable
* Input: string to catenate
Modified: trunk/lib/smarty/plugins/modifier.count_characters.php
===================================================================
--- trunk/lib/smarty/plugins/modifier.count_characters.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/modifier.count_characters.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty count_characters modifier plugin
*
- * Type: modifier
- * Name: count_characteres
+ * Type: modifier<br>
+ * Name: count_characteres<br>
* Purpose: count the number of characters in a text
* @link http://smarty.php.net/manual/en/language.modifier.count.characters.php
* count_characters (Smarty online manual)
Modified: trunk/lib/smarty/plugins/modifier.count_paragraphs.php
===================================================================
--- trunk/lib/smarty/plugins/modifier.count_paragraphs.php 2009-08-29 08:34:03 UTC (rev 345)
+++ trunk/lib/smarty/plugins/modifier.count_paragraphs.php 2009-08-29 08:42:52 UTC (rev 346)
@@ -9,8 +9,8 @@
/**
* Smarty count_paragraphs modifier plugin
*
- * Type: modifier
- * Name: count_paragraphs
+ * Type: modifier<br>
+ * Name: count_paragraphs<br>
* Purpose: count the number of paragraphs in a text
* @...
[truncated message content] |
|
From: <ts...@us...> - 2009-08-29 08:34:11
|
Revision: 345
http://openupload.svn.sourceforge.net/openupload/?rev=345&view=rev
Author: tsdogs
Date: 2009-08-29 08:34:03 +0000 (Sat, 29 Aug 2009)
Log Message:
-----------
separate personal plugins from smarty default ones
Added Paths:
-----------
trunk/lib/smarty_plugins/
trunk/lib/smarty_plugins/block.tr.php
trunk/lib/smarty_plugins/function.db_table.php
trunk/lib/smarty_plugins/function.tpl.php
trunk/lib/smarty_plugins/modifier.fsize_format.php
Removed Paths:
-------------
trunk/lib/smarty/plugins/block.tr.php
trunk/lib/smarty/plugins/function.db_table.php
trunk/lib/smarty/plugins/function.tpl.php
trunk/lib/smarty/plugins/modifier.fsize_format.php
Deleted: trunk/lib/smarty/plugins/block.tr.php
===================================================================
--- trunk/lib/smarty/plugins/block.tr.php 2009-08-28 15:16:42 UTC (rev 344)
+++ trunk/lib/smarty/plugins/block.tr.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -1,34 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package OpenUpload
- * @subpackage plugins
- */
-
-
-/**
- * Smarty {tr} block plugin
- *
- * Type: block
- * Name: tr
- * Purpose: Translate contained text with a user defined function "translate"
- * @author Alessandro Briosi
- * @param array
- * @param Smarty
- * @return string
- * @uses translate()
- */
-
-function smarty_block_tr($params, $content = null, &$smarty, &$repeat) {
-
- if(!$repeat){
- if (isset($content)) {
-// return htmlentities(translate($content,'template',$params));
- return translate($content, 'template',$params);
- } else {
- return '';
- }
- }
-}
-
-?>
\ No newline at end of file
Deleted: trunk/lib/smarty/plugins/function.db_table.php
===================================================================
--- trunk/lib/smarty/plugins/function.db_table.php 2009-08-28 15:16:42 UTC (rev 344)
+++ trunk/lib/smarty/plugins/function.db_table.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -1,40 +0,0 @@
-<?php
-
-
-
-function smarty_function_db_table($params, &$smarty){
-
- $data = $params['data'];
- isset($params['header'])?$headers = $params['header']:$headers=array();
- isset($params['fields'])?$fields = $params['fields']:$fields=array();
-
- $fields_set = count($fields)>0;
-
- $result = '<table '.$params['tbloptions'].'>';
- $result .= "<tbody>\n";
- if (count($headers)>0){
- $result .= '<tr>';
- foreach ($headers as $val){
- $result .= '<th>'.$val.'</th>';
- }
- $result .= '</tr>';
- }
-
- foreach ($data as $row){
- $result .= '<tr>';
- if ($fields_set) {
- foreach ($fields as $val){
- $result .= '<td>'.htmlentities($row[$val]).'</td>';
- }
- } else {
- foreach ($row as $val){
- $result .= '<td>'.htmlentities($val).'</td>';
- }
- }
- $result .= '</tr>'."\n";
- }
-
- $result .= "</tbody>\n";
- $result .= "</table>\n";
- return $result;
-}
\ No newline at end of file
Deleted: trunk/lib/smarty/plugins/function.tpl.php
===================================================================
--- trunk/lib/smarty/plugins/function.tpl.php 2009-08-28 15:16:42 UTC (rev 344)
+++ trunk/lib/smarty/plugins/function.tpl.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -1,30 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package OpenUpload
- * @subpackage plugins
- */
-
-
-/**
- * Smarty {tpl} function plugin
- *
- * Type: function
- * Name: tpl
- * Input:
- * - file (required) - string containing template sub file
- * Purpose: Returns a file from the template folder, if it does not exsist
- * it returns a file from the default template
- * @author Alessandro Briosi
- * @param array
- * @param Smarty
- * @return string
- * @uses template_file
- */
-
-function smarty_function_tpl($params, &$smarty)
-{
- return template_file($params["file"]);
-
-}
-?>
\ No newline at end of file
Deleted: trunk/lib/smarty/plugins/modifier.fsize_format.php
===================================================================
--- trunk/lib/smarty/plugins/modifier.fsize_format.php 2009-08-28 15:16:42 UTC (rev 344)
+++ trunk/lib/smarty/plugins/modifier.fsize_format.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -1,43 +0,0 @@
-<?php
-/*
-* Smarty plugin
-* -------------------------------------------------------------
-* Type: modifier
-* Name: fsize_format
-* Version: 0.1
-* Date: 2003-02-21
-* Author: Joscha Feth, jo...@fe...
-* Purpose: formats a filesize (in bytes) to human-readable format
-* Usage: In the template, use
- {$filesize|fsize_format} => 123.45 B|KB|MB|GB|TB
- or
- {$filesize|fsize_format:"MB"} => 123.45 MB
- or
- {$filesize|fsize_format:"TB":4} => 0.0012 TB
-* Params:
- int size the filesize in bytes
- string format the format, the output shall be: B, KB, MB, GB or TB
- int precision the rounding precision
-* Install: Drop into the plugin directory
-* -------------------------------------------------------------
-*/
-function smarty_modifier_fsize_format($size,$format = '',$precision = 2)
-{
-
- //~ file measurements, could be calculated on the fly, but its faster like that
- $sizes = array();
- $sizes["TB"] = 1099511627776;
- $sizes["GB"] = 1073741824;
- $sizes["MB"] = 1048576;
- $sizes["KB"] = 1024;
- $sizes["B"] = 1;
-
- //~ get "human" filesize
- foreach($sizes AS $unit => $bytes) {
- if($size > $bytes || $unit == strtoupper($format)) {
- //~ return formatted size
- return number_format($size / $bytes,$precision)." ".$unit;
- } //~ end if
- } //~ end foreach
-} //~ end function
-?>
Copied: trunk/lib/smarty_plugins/block.tr.php (from rev 285, trunk/lib/smarty/plugins/block.tr.php)
===================================================================
--- trunk/lib/smarty_plugins/block.tr.php (rev 0)
+++ trunk/lib/smarty_plugins/block.tr.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -0,0 +1,34 @@
+<?php
+/**
+ * Smarty plugin
+ * @package OpenUpload
+ * @subpackage plugins
+ */
+
+
+/**
+ * Smarty {tr} block plugin
+ *
+ * Type: block
+ * Name: tr
+ * Purpose: Translate contained text with a user defined function "translate"
+ * @author Alessandro Briosi
+ * @param array
+ * @param Smarty
+ * @return string
+ * @uses translate()
+ */
+
+function smarty_block_tr($params, $content = null, &$smarty, &$repeat) {
+
+ if(!$repeat){
+ if (isset($content)) {
+// return htmlentities(translate($content,'template',$params));
+ return translate($content, 'template',$params);
+ } else {
+ return '';
+ }
+ }
+}
+
+?>
\ No newline at end of file
Property changes on: trunk/lib/smarty_plugins/block.tr.php
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mergeinfo
+
Copied: trunk/lib/smarty_plugins/function.db_table.php (from rev 285, trunk/lib/smarty/plugins/function.db_table.php)
===================================================================
--- trunk/lib/smarty_plugins/function.db_table.php (rev 0)
+++ trunk/lib/smarty_plugins/function.db_table.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -0,0 +1,40 @@
+<?php
+
+
+
+function smarty_function_db_table($params, &$smarty){
+
+ $data = $params['data'];
+ isset($params['header'])?$headers = $params['header']:$headers=array();
+ isset($params['fields'])?$fields = $params['fields']:$fields=array();
+
+ $fields_set = count($fields)>0;
+
+ $result = '<table '.$params['tbloptions'].'>';
+ $result .= "<tbody>\n";
+ if (count($headers)>0){
+ $result .= '<tr>';
+ foreach ($headers as $val){
+ $result .= '<th>'.$val.'</th>';
+ }
+ $result .= '</tr>';
+ }
+
+ foreach ($data as $row){
+ $result .= '<tr>';
+ if ($fields_set) {
+ foreach ($fields as $val){
+ $result .= '<td>'.htmlentities($row[$val]).'</td>';
+ }
+ } else {
+ foreach ($row as $val){
+ $result .= '<td>'.htmlentities($val).'</td>';
+ }
+ }
+ $result .= '</tr>'."\n";
+ }
+
+ $result .= "</tbody>\n";
+ $result .= "</table>\n";
+ return $result;
+}
\ No newline at end of file
Property changes on: trunk/lib/smarty_plugins/function.db_table.php
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mergeinfo
+
Copied: trunk/lib/smarty_plugins/function.tpl.php (from rev 285, trunk/lib/smarty/plugins/function.tpl.php)
===================================================================
--- trunk/lib/smarty_plugins/function.tpl.php (rev 0)
+++ trunk/lib/smarty_plugins/function.tpl.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -0,0 +1,30 @@
+<?php
+/**
+ * Smarty plugin
+ * @package OpenUpload
+ * @subpackage plugins
+ */
+
+
+/**
+ * Smarty {tpl} function plugin
+ *
+ * Type: function
+ * Name: tpl
+ * Input:
+ * - file (required) - string containing template sub file
+ * Purpose: Returns a file from the template folder, if it does not exsist
+ * it returns a file from the default template
+ * @author Alessandro Briosi
+ * @param array
+ * @param Smarty
+ * @return string
+ * @uses template_file
+ */
+
+function smarty_function_tpl($params, &$smarty)
+{
+ return template_file($params["file"]);
+
+}
+?>
\ No newline at end of file
Property changes on: trunk/lib/smarty_plugins/function.tpl.php
___________________________________________________________________
Added: svn:mergeinfo
+
Copied: trunk/lib/smarty_plugins/modifier.fsize_format.php (from rev 285, trunk/lib/smarty/plugins/modifier.fsize_format.php)
===================================================================
--- trunk/lib/smarty_plugins/modifier.fsize_format.php (rev 0)
+++ trunk/lib/smarty_plugins/modifier.fsize_format.php 2009-08-29 08:34:03 UTC (rev 345)
@@ -0,0 +1,43 @@
+<?php
+/*
+* Smarty plugin
+* -------------------------------------------------------------
+* Type: modifier
+* Name: fsize_format
+* Version: 0.1
+* Date: 2003-02-21
+* Author: Joscha Feth, jo...@fe...
+* Purpose: formats a filesize (in bytes) to human-readable format
+* Usage: In the template, use
+ {$filesize|fsize_format} => 123.45 B|KB|MB|GB|TB
+ or
+ {$filesize|fsize_format:"MB"} => 123.45 MB
+ or
+ {$filesize|fsize_format:"TB":4} => 0.0012 TB
+* Params:
+ int size the filesize in bytes
+ string format the format, the output shall be: B, KB, MB, GB or TB
+ int precision the rounding precision
+* Install: Drop into the plugin directory
+* -------------------------------------------------------------
+*/
+function smarty_modifier_fsize_format($size,$format = '',$precision = 2)
+{
+
+ //~ file measurements, could be calculated on the fly, but its faster like that
+ $sizes = array();
+ $sizes["TB"] = 1099511627776;
+ $sizes["GB"] = 1073741824;
+ $sizes["MB"] = 1048576;
+ $sizes["KB"] = 1024;
+ $sizes["B"] = 1;
+
+ //~ get "human" filesize
+ foreach($sizes AS $unit => $bytes) {
+ if($size > $bytes || $unit == strtoupper($format)) {
+ //~ return formatted size
+ return number_format($size / $bytes,$precision)." ".$unit;
+ } //~ end if
+ } //~ end foreach
+} //~ end function
+?>
Property changes on: trunk/lib/smarty_plugins/modifier.fsize_format.php
___________________________________________________________________
Added: svn:mergeinfo
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 15:16:50
|
Revision: 344
http://openupload.svn.sourceforge.net/openupload/?rev=344&view=rev
Author: tsdogs
Date: 2009-08-28 15:16:42 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
v. 0.4.1
Modified Paths:
--------------
web/index.html
Modified: web/index.html
===================================================================
--- web/index.html 2009-08-28 15:01:05 UTC (rev 343)
+++ web/index.html 2009-08-28 15:16:42 UTC (rev 344)
@@ -44,7 +44,12 @@
<div class="section">
<h1 class="title">Download</h1>
<div class="text">
- <div style="font-size:11pt"><b>Stable version 0.4</b> - 2009.04.18<br /></div>
+ <div style="font-size:11pt"><b>Stable version 0.4.1</b> - 2009.08.28<br /></div>
+ This is a bug fix release. Though also introduces mssql support and Brazilian Portuguese translation.<br />
+ Click <a href="http://sourceforge.net/project/showfiles.php?group_id=242018&package_id=294593&release_id=659152" rel="external">here</a> to download.<br />
+ </div>
+ <div class="text">
+ <div style="font-size:11pt"><b>Old Stable version 0.4</b> - 2009.04.18<br /></div>
I'm pleased to announce the availability of the new Open Upload version.<br />
Major changes are:
<ul>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 15:01:12
|
Revision: 343
http://openupload.svn.sourceforge.net/openupload/?rev=343&view=rev
Author: tsdogs
Date: 2009-08-28 15:01:05 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
typo
Modified Paths:
--------------
branches/v0.4/CHANGELOG
Modified: branches/v0.4/CHANGELOG
===================================================================
--- branches/v0.4/CHANGELOG 2009-08-28 14:48:30 UTC (rev 342)
+++ branches/v0.4/CHANGELOG 2009-08-28 15:01:05 UTC (rev 343)
@@ -9,9 +9,12 @@
* Mime types
- Now mime types try to be handled on the server (see bugs)
+* Plugins
+ - Add multiple recipients option to email plugin (; separated list)
+
* Bugs fixed
- Mime handling is now done on the server if supported.
- - Handle strangs AD behavier with blank passwords
+ - Handle strange AD behavier with blank passwords
- Handle magic_quotes_gpc if enabled, which caused problems with strong passwords
- New mysql versions don't allow an empty string for date/time
- Missing activity_log structure from sql files
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 14:48:39
|
Revision: 342
http://openupload.svn.sourceforge.net/openupload/?rev=342&view=rev
Author: tsdogs
Date: 2009-08-28 14:48:30 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
add multiple recipients.
Modified Paths:
--------------
branches/v0.4/plugins/email.inc.php
Modified: branches/v0.4/plugins/email.inc.php
===================================================================
--- branches/v0.4/plugins/email.inc.php 2009-08-28 13:56:12 UTC (rev 341)
+++ branches/v0.4/plugins/email.inc.php 2009-08-28 14:48:30 UTC (rev 342)
@@ -4,6 +4,10 @@
function emailPlugin() {
$this->description = tr('Add option to send e-mail to the uploader or to another e-mail address');
+ $this->options = array(
+ array('name' => 'multirecipients', 'description' => tr('allow multiple recipients (1 = enable)'), 'type' => 'text'),
+ );
+
}
function uploadOptions(&$finfo,$acl) {
@@ -17,6 +21,7 @@
if ($acl!='enable') return true;
/* do e-mail checking and so */
/* $this->display('upload'); */
+ $group = $this->getGroup('maxrecipients');
$finfo[0]['emailme']=$_POST['emailme'];
$finfo[0]['emailfrom']=app()->config['site']['email'];
$finfo[0]['emailto']=$_POST['emailto'];
@@ -35,11 +40,21 @@
$finfo[0]['emailfrom']=$_SESSION['user']['email'];
}
}
+ if (!isset($this->config['multirecipients'][$group]) and isset($this->config['multirecipients']['*'])) {
+ $this->config['multirecipients'][$group]=$this->config['multirecipients']['*'];
+ }
if ($finfo[0]['emailto']!='') {
- if (!validEmail($_POST['emailto'])) {
- app()->error(tr('Destination e-mail address isn\'t valid!'));
- return false;
+ if ($this->config['multirecipients'][$group]=='1') {
+ $emailto = trim(split(';',$_POST['emailto']));
+ } else {
+ $emailto[0] = $_POST['emailto'];
}
+ foreach ($emailto as $destination) {
+ if (!validEmail($destination)) {
+ app()->error(tr('Destination e-mail address "%1" isn\'t valid!',$destination));
+ return false;
+ }
+ }
}
return true;
@@ -97,4 +112,4 @@
return true;
}
}
-}
\ No newline at end of file
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 13:56:20
|
Revision: 341
http://openupload.svn.sourceforge.net/openupload/?rev=341&view=rev
Author: tsdogs
Date: 2009-08-28 13:56:12 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
prepare for v0.4.1 release
Modified Paths:
--------------
branches/v0.4/CHANGELOG
Modified: branches/v0.4/CHANGELOG
===================================================================
--- branches/v0.4/CHANGELOG 2009-08-28 13:09:19 UTC (rev 340)
+++ branches/v0.4/CHANGELOG 2009-08-28 13:56:12 UTC (rev 341)
@@ -1,3 +1,23 @@
+Changelog from release 0.4 to 0.4.1
+
+* Database
+ - MSSQL support. by Leonardo F. Cardoso (leocardoso)
+
+* Translations
+ - Added Brazilian Portuguese. by Leonardo F. Cardoso (leocardoso)
+
+* Mime types
+ - Now mime types try to be handled on the server (see bugs)
+
+* Bugs fixed
+ - Mime handling is now done on the server if supported.
+ - Handle strangs AD behavier with blank passwords
+ - Handle magic_quotes_gpc if enabled, which caused problems with strong passwords
+ - New mysql versions don't allow an empty string for date/time
+ - Missing activity_log structure from sql files
+ - Report a message if php fails moving around the files.
+ - A few other minor fixes.
+
Changelog from release 0.3c to 0.4
* General
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 13:09:35
|
Revision: 340
http://openupload.svn.sourceforge.net/openupload/?rev=340&view=rev
Author: tsdogs
Date: 2009-08-28 13:09:19 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
Handle mime types server side (if possible), and a couple of checks in the setup script.
Modified Paths:
--------------
branches/v0.4/lib/general.inc.php
branches/v0.4/lib/modules/default/files.inc.php
branches/v0.4/www/setup.inc.php
Modified: branches/v0.4/lib/general.inc.php
===================================================================
--- branches/v0.4/lib/general.inc.php 2009-08-28 12:58:04 UTC (rev 339)
+++ branches/v0.4/lib/general.inc.php 2009-08-28 13:09:19 UTC (rev 340)
@@ -269,7 +269,30 @@
return mail($to,$subject,$msg,$header,'-f "'.$from.'"');
}
+/* tries to use all available methods to determine a file mime type */
+function get_mime_type($file,$type) {
+ global $CONFIG;
+ $mime = $type;
+ if (function_exists('finfo_open')) {
+ if ($CONFIG['mime_magic_file']!='')
+ $finfo = finfo_open(FILEINFO_MIME, $CONFIG['mime_magic_file']);
+ else
+ $finfo = finfo_open(FILEINFO_MIME);
+ $mime = finfo_file($finfo,$file);
+ if (strpos($mime,';')) { /* remove the charset */
+ $mime = substr($mime,0,strpos($mime,';'));
+ }
+ if (strpos($mime,' ')) { /* remove the charset */
+ $mime = substr($mime,0,strpos($mime,' '));
+ }
+ finfo_close($finfo);
+ } else if (function_exists('mime_content_type')) {
+ $mime = mime_content_type($file);
+ } else { /* TODO: try to do it internally ??? */
+ }
+ return $mime;
+}
?>
Modified: branches/v0.4/lib/modules/default/files.inc.php
===================================================================
--- branches/v0.4/lib/modules/default/files.inc.php 2009-08-28 12:58:04 UTC (rev 339)
+++ branches/v0.4/lib/modules/default/files.inc.php 2009-08-28 13:09:19 UTC (rev 340)
@@ -159,9 +159,14 @@
$tmpnamex = $tmpname.'_'.$i;
}
if (isset($_FILES[$u]) and $_FILES[$u]['tmp_name']!='') {
- move_uploaded_file($_FILES[$u]['tmp_name'],$tmpnamex);
+ /* fail if something goes wrong */
+ if (!move_uploaded_file($_FILES[$u]['tmp_name'],$tmpnamex)) {
+ $this->error(tr('Failed moving the file on the server, please check the configuration!'));
+ }
$_SESSION['user']['u'][$i]['tmp']=$tmpnamex;
- $_SESSION['user']['u'][$i]['mime']=$_FILES[$u]['type'];
+ /* get the file mime type, and do not rely on what the browser sends */
+ $mime = get_mime_type($tmpnamex,$_FILES[$u]['type']);
+ $_SESSION['user']['u'][$i]['mime']=$mime;
$_SESSION['user']['u'][$i]['name']=$_FILES[$u]['name'];
$_SESSION['user']['u'][$i]['size']=$_FILES[$u]['size'];
$_SESSION['user']['u'][$i]['ip']=$_SERVER['REMOTE_ADDR'];
Modified: branches/v0.4/www/setup.inc.php
===================================================================
--- branches/v0.4/www/setup.inc.php 2009-08-28 12:58:04 UTC (rev 339)
+++ branches/v0.4/www/setup.inc.php 2009-08-28 13:09:19 UTC (rev 340)
@@ -461,6 +461,17 @@
} else {
msg('Magic Quotes: disabled','ok');
}
+ if (function_exists('finfo_open')) {
+ msg('Fileinfo extension: installed','ok');
+ } else {
+ if (function_exists('mime_content_type')) {
+ msg('mime type php function: available','ok');
+ } else {
+ msg('mime type handling: not available','fail');
+ msg('This could lead problems with bogus browsers!');
+ }
+ msg('For correct mime types handling it\'s suggested to install the Fileinfo');
+ }
if (function_exists('mysql_connect')) {
msg('MYSQL Support: exsists','ok');
} else {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 12:58:18
|
Revision: 339
http://openupload.svn.sourceforge.net/openupload/?rev=339&view=rev
Author: tsdogs
Date: 2009-08-28 12:58:04 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
remove wrongly handled magic quotes from here.
Modified Paths:
--------------
branches/v0.4/lib/user.inc.php
Modified: branches/v0.4/lib/user.inc.php
===================================================================
--- branches/v0.4/lib/user.inc.php 2009-08-28 12:57:27 UTC (rev 338)
+++ branches/v0.4/lib/user.inc.php 2009-08-28 12:58:04 UTC (rev 339)
@@ -72,11 +72,6 @@
if (isset($_POST['username'])) {
$username = $_POST['username'];
$password = $_POST['pwd'];
- if (ini_get('magic_quotes_gpc')) {
- /* remove magic quoting from username and password */
- $username = stripslashes($username);
- $password = stripslashes($password);
- }
}
if ($username != '') {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 12:57:34
|
Revision: 338
http://openupload.svn.sourceforge.net/openupload/?rev=338&view=rev
Author: tsdogs
Date: 2009-08-28 12:57:27 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
Handle the deprecated magic_quotes_gpc php function
Modified Paths:
--------------
branches/v0.4/lib/main.inc.php
Modified: branches/v0.4/lib/main.inc.php
===================================================================
--- branches/v0.4/lib/main.inc.php 2009-08-28 11:43:48 UTC (rev 337)
+++ branches/v0.4/lib/main.inc.php 2009-08-28 12:57:27 UTC (rev 338)
@@ -15,6 +15,8 @@
function Application($CONFIG) {
global $application;
+ global $_POST;
+ global $_GET;
$application = $this;
$this->config = $CONFIG;
@@ -101,6 +103,17 @@
$this->loglevels['notice'] = array('id' => 4, 'syslog' => LOG_NOTICE );
$this->loglevels['info'] = array('id' => 5, 'syslog' => LOG_INFO );
$this->loglevels['debug'] = array('id' => 9, 'syslog' => LOG_DEBUG );
+
+ /* handle magic_quotes at the source */
+ if (ini_get('magic_quotes_gpc')) {
+ /* remove magic quoting from username and password */
+ foreach ($_POST as $k => $v) {
+ $_POST[$k] = stripslashes($v);
+ }
+ foreach ($_GET as $k => $v) {
+ $_GET[$k] = stripslashes($v);
+ }
+ }
}
function getBrowserLang() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-28 11:43:58
|
Revision: 337
http://openupload.svn.sourceforge.net/openupload/?rev=337&view=rev
Author: tsdogs
Date: 2009-08-28 11:43:48 +0000 (Fri, 28 Aug 2009)
Log Message:
-----------
fix magic_quotes_gpc problems with strange user names and passwords.
Modified Paths:
--------------
branches/v0.4/lib/user.inc.php
branches/v0.4/www/setup.inc.php
Modified: branches/v0.4/lib/user.inc.php
===================================================================
--- branches/v0.4/lib/user.inc.php 2009-08-27 16:19:45 UTC (rev 336)
+++ branches/v0.4/lib/user.inc.php 2009-08-28 11:43:48 UTC (rev 337)
@@ -72,6 +72,11 @@
if (isset($_POST['username'])) {
$username = $_POST['username'];
$password = $_POST['pwd'];
+ if (ini_get('magic_quotes_gpc')) {
+ /* remove magic quoting from username and password */
+ $username = stripslashes($username);
+ $password = stripslashes($password);
+ }
}
if ($username != '') {
Modified: branches/v0.4/www/setup.inc.php
===================================================================
--- branches/v0.4/www/setup.inc.php 2009-08-27 16:19:45 UTC (rev 336)
+++ branches/v0.4/www/setup.inc.php 2009-08-28 11:43:48 UTC (rev 337)
@@ -403,6 +403,7 @@
$result[] = $d;
}
}
+ sort($result);
closedir($dir);
return $result;
}
@@ -454,6 +455,12 @@
msg('Though the application should work with this set please consider disabling it');
}
echo '<div id="message"><b>Optional Values</b></div>';
+ if (ini_get('magic_quotes_gpc')) {
+ msg('Magic Quotes: enabled','fail');
+ msg('It is strongly suggested to disable magic_quotes (which are deprecated now!)');
+ } else {
+ msg('Magic Quotes: disabled','ok');
+ }
if (function_exists('mysql_connect')) {
msg('MYSQL Support: exsists','ok');
} else {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-27 16:19:53
|
Revision: 336
http://openupload.svn.sourceforge.net/openupload/?rev=336&view=rev
Author: tsdogs
Date: 2009-08-27 16:19:45 +0000 (Thu, 27 Aug 2009)
Log Message:
-----------
fix AD strange behavier with empty passwords.
Modified Paths:
--------------
trunk/lib/modules/auth/ldap.inc.php
Modified: trunk/lib/modules/auth/ldap.inc.php
===================================================================
--- trunk/lib/modules/auth/ldap.inc.php 2009-08-27 16:18:47 UTC (rev 335)
+++ trunk/lib/modules/auth/ldap.inc.php 2009-08-27 16:19:45 UTC (rev 336)
@@ -28,7 +28,6 @@
function disconnect() {
@ldap_unbind($this->ds);
- @ldap_close($this->ds);
}
function bind() {
@@ -38,18 +37,24 @@
}
function authenticate($login,$password) {
+ $result = false;
+ /* just to be sure */
+ $this->disconnect();
if ($this->connect()) {
if ($this->config['type'] != 'AD') {
$uid = $this->ufield.'='.$login.','.$this->config['userdn'];
} else {
$uid = $login.'@'.$this->config['domain'];
}
- if (@ldap_bind($this->ds, $uid, $password)) {
- return true;
+ if ($uid!=NULL and $password!=NULL) {
+ /* prevent injection (?), and special chars, thanks to Jason Weir */
+ if (@ldap_bind($this->ds, $uid, $password)===TRUE) {
+ $result = true;
+ }
}
$this->disconnect();
}
- return false;
+ return $result;
}
function userinfo($login) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-27 16:18:56
|
Revision: 335
http://openupload.svn.sourceforge.net/openupload/?rev=335&view=rev
Author: tsdogs
Date: 2009-08-27 16:18:47 +0000 (Thu, 27 Aug 2009)
Log Message:
-----------
fix AD strange behavier with empty passwords.
Modified Paths:
--------------
branches/v0.4/lib/modules/auth/ldap.inc.php
Modified: branches/v0.4/lib/modules/auth/ldap.inc.php
===================================================================
--- branches/v0.4/lib/modules/auth/ldap.inc.php 2009-08-21 18:07:59 UTC (rev 334)
+++ branches/v0.4/lib/modules/auth/ldap.inc.php 2009-08-27 16:18:47 UTC (rev 335)
@@ -28,7 +28,6 @@
function disconnect() {
@ldap_unbind($this->ds);
- @ldap_close($this->ds);
}
function bind() {
@@ -38,18 +37,24 @@
}
function authenticate($login,$password) {
+ $result = false;
+ /* just to be sure */
+ $this->disconnect();
if ($this->connect()) {
if ($this->config['type'] != 'AD') {
$uid = $this->ufield.'='.$login.','.$this->config['userdn'];
} else {
$uid = $login.'@'.$this->config['domain'];
}
- if (@ldap_bind($this->ds, $uid, $password)) {
- return true;
+ if ($uid!=NULL and $password!=NULL) {
+ /* prevent injection (?), and special chars, thanks to Jason Weir */
+ if (@ldap_bind($this->ds, $uid, $password)===TRUE) {
+ $result = true;
+ }
}
$this->disconnect();
}
- return false;
+ return $result;
}
function userinfo($login) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-21 18:08:10
|
Revision: 334
http://openupload.svn.sourceforge.net/openupload/?rev=334&view=rev
Author: tsdogs
Date: 2009-08-21 18:07:59 +0000 (Fri, 21 Aug 2009)
Log Message:
-----------
Add MSSQL support, by Leonardo F. Cardoso
Modified Paths:
--------------
trunk/www/setup.inc.php
Added Paths:
-----------
trunk/lib/modules/db/mssql.inc.php
Added: trunk/lib/modules/db/mssql.inc.php
===================================================================
--- trunk/lib/modules/db/mssql.inc.php (rev 0)
+++ trunk/lib/modules/db/mssql.inc.php 2009-08-21 18:07:59 UTC (rev 334)
@@ -0,0 +1,275 @@
+<?php
+
+/*
+ * Code by Leonardo F. Cardoso - leo...@gm...
+ * 17 - August - 2009
+ *
+ * Known issues:
+ * - function mssql_escape_string is not with "Object Oriented" structure.
+ * - simulating "LIMIT / OFFSET" with bad performance
+ */
+
+/**
+ * Simulate mssql_escape_string
+ * @param $string_to_escape
+ * @return unknown_type
+ */
+function mssql_escape_string($string_to_escape) {
+ $replaced_string = str_replace("'","''",$string_to_escape);
+ return $replaced_string;
+}
+
+class mssqlDB extends dbBase {
+ var $config;
+ var $db;
+ var $prefix;
+
+
+ function mssqlDB($config = array()) {
+ $this->config = $config;
+ $this->prefix = $config['prefix'];
+ }
+
+ function init() {
+ $this->db = mssql_connect($this->config['host'], $this->config['user'], $this->config['password'])
+ or die('ERROR: connection to db failed!');
+ mssql_select_db($this->config['name']) or die('ERROR: database could not be opened.');
+ }
+
+ function free() {
+ mssql_close($this->db);
+ }
+
+ function newId($tbl,$field = 'id',$keys = array ()) {
+ $sql = 'SELECT max(['.$field.']) as newid FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ $res = mssql_query($sql);
+ $newid = mssql_fetch_assoc($res);
+ mssql_free_result($res);
+ return $id['newid']+1;
+ }
+
+ function newRandomId($tbl,$field = 'id',$size = 30, $alpha = false) {
+ $found = true;
+ while ($found) {
+ $id = randomName($size,$size,$alpha);
+ $sql = 'SELECT '.$field.' FROM ['.$this->prefix.$tbl.'] WHERE ['.$field.']=\''.$id.'\'';
+ $res = mssql_query($sql);
+ $found = mssql_num_rows($res)>0;
+ mssql_free_result($res);
+ }
+ return $id;
+ }
+
+ function count($tbl,$keys = array()) {
+ $sql = 'SELECT count(*) AS num FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ $res = mssql_query($sql);
+ $row = mssql_fetch_assoc($res);
+ mssql_free_result($res);
+ return $row['num'];
+ }
+
+ function read($tbl,$keys = array(), $sort = array(), $limit = '', $assoc = array()) {
+ $sql = 'SELECT * FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ if (count($sort)>0) {
+ $sorting = '';
+ foreach ($sort as $s) {
+ if ($sorting!='') $sorting.=',';
+ $sorting .= $s;
+ }
+ $sql .= ' ORDER BY '.$sorting;
+ }
+
+ /* SQL Server doesn't have LIMIT/OFFSET
+ * Let's select limit+offset rows and let the code get the needed ones.
+ * Bad performance this way.
+ */
+ if ($limit != '') {
+
+ $l = explode(',',$limit);
+
+ $realLimit = $l[1];
+ $realOffset= $l[0];
+ $topClausule = $realLimit + $realOffset;
+
+ $sql = str_replace('SELECT * ', 'SELECT TOP ' . $topClausule . ' * ', $sql);
+
+ }
+
+ $res = mssql_query($sql);
+ if (!$res) { die('query failed: '.$sql); }
+ $result = array();
+
+ /* Let's ignore "offset" tuples */
+ for ($index = 0; $index < $realOffset; $index++) {
+ $row = mssql_fetch_assoc($res);
+ }
+
+ while ($row = mssql_fetch_assoc($res)) {
+ if (count($assoc)) { /* maybe there is a better way to do this? */
+ $str = '$result';
+ foreach ($assoc as $k) {
+ $str .= '[\''.$row[$k].'\']';
+ }
+ $str .= '=$row;';
+ eval($str);
+ } else {
+ $result[] = $row;
+ }
+ }
+
+ mssql_free_result($res);
+
+ return $result;
+ }
+
+ /* This is an extended function which extends the select criteria */
+ function readex($tbl,$criteria = array(), $sort = array(),$limit = '') {
+ $sql = 'SELECT * FROM ['.$this->prefix.$tbl.']';
+
+ if (count($criteria)>0) {
+ $where = '';
+ foreach ($criteria as $ands) {
+ $where_save = $where;
+ $where = '';
+ foreach ($ands as $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$v[0].']'.$v[1].'\''.(mssql_escape_string($v[2])).'\'';
+ }
+ if ($where_save!='') {
+ $where = $where_save.' OR ('.$where.')';
+ } else {
+ $where = '('.$where.')';
+ }
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ if (count($sort)>0) {
+ $sorting = '';
+ foreach ($sort as $s) {
+ if ($sorting!='') $sorting.=',';
+ $sorting .= $s;
+ }
+ $sql .= ' ORDER BY '.$sorting;
+ }
+
+ /* SQL Server doesn't have LIMIT/OFFSET
+ * Let's select limit+offset rows and let the code get the needed ones.
+ * Bad performance this way.
+ */
+ if ($limit != '') {
+
+ $l = explode(',',$limit);
+
+ $realLimit = $l[1];
+ $realOffset= $l[0];
+ $topClausule = $realLimit + $realOffset;
+
+ $sql = str_replace('SELECT * ', 'SELECT TOP ' . $topClausule . ' * ', $sql);
+
+ }
+
+ $res = mssql_query($sql);
+ if (!$res) { die('query failed: '.$sql); }
+ $result = array();
+
+ /* Let's ignore "offset" tuples */
+ for ($index = 0; $index < $realOffset; $index++) {
+ $row = mssql_fetch_assoc($res);
+ }
+
+ while ($row = mssql_fetch_assoc($res)) {
+ $result[] = $row;
+ }
+
+ mssql_free_result($res);
+ return $result;
+ }
+
+ function insert($tbl,$values,$fields = array()) {
+ $sql = 'INSERT INTO ['.$this->prefix.$tbl.']';
+ $flist = '';
+ $vlist = '';
+ if (count($fields)>0) {
+ foreach ($fields as $f) {
+ if ($flist!='') $flist .= ',';
+ if ($vlist!='') $vlist .= ',';
+ $flist .= '['.$f.']';
+ $vlist .= '\''.mssql_escape_string($values[$f]).'\'';
+ }
+ } else {
+ foreach ($values as $k => $v) {
+ if ($flist!='') $flist .= ',';
+ if ($vlist!='') $vlist .= ',';
+ $flist .= '['.$k.']';
+ $vlist .= '\''.mssql_escape_string($v).'\'';
+ }
+ }
+ $sql .= ' ('.$flist.') VALUES ('.$vlist.')';
+ mssql_query($sql) or die("ERROR: query failed: ".$sql);
+ }
+
+ function update($tbl,$values,$keys = array(),$fields = array()) {
+ $sql = 'UPDATE ['.$this->prefix.$tbl.']';
+ $set = '';
+ if (count($fields)>0) {
+ foreach ($fields as $f) {
+ if ($set!='') $set .= ',';
+ $set .= '['.$f.']=\''.mssql_escape_string($values[$f]).'\'';
+ }
+ } else {
+ foreach ($values as $k => $v) {
+ if ($set!='') $set .= ',';
+ $set .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ }
+ $sql .= ' SET '.$set;
+ if (count($keys)>0) { /* should always be */
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ mssql_query($sql);
+ }
+
+ function delete($tbl,$keys = array()) {
+ $sql = 'DELETE FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ mssql_query($sql);
+ }
+}
+
+?>
Modified: trunk/www/setup.inc.php
===================================================================
--- trunk/www/setup.inc.php 2009-08-21 18:06:47 UTC (rev 333)
+++ trunk/www/setup.inc.php 2009-08-21 18:07:59 UTC (rev 334)
@@ -36,6 +36,16 @@
*/
+/**
+ * Simulate mssql_escape_string
+ * @param $string_to_escape
+ * @return unknown_type
+ */
+function mssql_escape_string($string_to_escape) {
+ $replaced_string = str_replace("'","''",$string_to_escape);
+ return $replaced_string;
+}
+
if (!defined('__VALID_CALLING_SCRIPT')) die('DIRECT ACCESS IS DENIED');
ob_start();
@@ -104,6 +114,17 @@
'droptable' => 'DROP TABLE IF EXISTS %1%2',
);
+//LCARD
+$MSSQL_QUERY = array (
+ 'dropdb' => 'DROP DATABASE "%1"',
+ 'createdb' => 'CREATE DATABASE "%1"',
+ 'dropuser' => '',
+ 'createuser' => '',
+ 'grant' => '',
+ 'droptable' => 'IF EXISTS (SELECT name FROM sysobjects WHERE name = \'%1%2\' AND xtype=\'U\' ) DROP TABLE %1%2',
+);
+//LCARD
+
$DB_STRUCTURE = array (
'acl' => array (
'fields' => array (
@@ -263,6 +284,7 @@
array ('id' => 'it', 'name' => 'Italiano', 'locale' => 'it_IT.utf8', 'browser' => '[it];[it-IT]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'fr', 'name' => 'Français', 'locale' => 'fr_FR.utf8', 'browser' => '[fr];[fr-FR]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'de', 'name' => 'Deutsch', 'locale' => 'de_DE.utf8', 'browser' => '[de];[de-DE]', 'charset' => 'utf-8', 'active' => 1),
+ array ('id' => 'pt', 'name' => 'Português', 'locale' => 'pt_BR.utf8', 'browser' => '[pt];[pt-BR]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'zh_CN', 'name' => '中文', 'locale' => 'zh_CN.utf8', 'browser' => '[zh];[zh-CN]', 'charset' => 'utf-8', 'active' => 1),
),
'users' => array (
@@ -444,6 +466,14 @@
msg('POSTGRESQL Support: not found','fail');
msg('POSTGRESQL is needed if you plan to use postgresql');
}
+ //LCARD - must config PHP.INI
+ if (function_exists('mssql_connect')) {
+ msg('MSSQL Support: exsists','ok');
+ } else {
+ msg('MSSQL Support: not found','fail');
+ msg('MSSQL is needed if you plan to use mssql');
+ }
+ //LCARD
if (function_exists('ldap_connect')) {
msg('LDAP Support: exsists','ok');
} else {
@@ -976,6 +1006,7 @@
}
function dbconnect($host,$user,$pwd,$db,$debug = false) {
+
global $dbhandle;
global $CONFIG;
@@ -1002,6 +1033,15 @@
return false;
}
break;
+ // LCARD
+ case 'mssql':
+ $dbhandle = mssql_connect($host, $user, $pwd);
+ if (!(mssql_select_db($db, $dbhandle))) {
+ if ($debug) echo '<div id="message">Reason: '.mssql_get_last_message().'</div>';
+ return false;
+ }
+ break;
+ // LCARD
default:
msg('ERROR: dbtype: '.$CONFIG['database']['type'].' not yet supported','fail');
return false;
@@ -1030,6 +1070,16 @@
return false;
}
break;
+ //LCARD
+ case 'mssql':
+ // DEBUG ALL SQL SERVER QUERIES
+ // print "<br>$query<br>";
+ if (! mssql_query($query) ) {
+ if ($debug) echo '<div id="message">Query failed: '.$query.'<br />Reason: '.mssql_get_last_message().'</div>';
+ return false;
+ }
+ break;
+ //LCARD
}
return true;
}
@@ -1082,6 +1132,9 @@
$query .= ')';
return dbquery($query,array(),$debug);
break;
+
+
+
case 'pgsql':
$fieldlist = '';
foreach ($fields as $k => $f) {
@@ -1142,6 +1195,55 @@
}
return $res;
break;
+
+
+ //LCARD -Attention to IDENTITY fields
+ case 'mssql':
+ $fieldlist = '';
+ foreach ($fields as $k => $f) {
+ $field = '['.$k.']';
+ switch ($f['type']) {
+ case 'char':
+ $field .= ' VARCHAR('.$f['size'].')';
+ break;
+ case 'int':
+ $field .= ' INT';
+ break;
+ case 'text':
+ $field .= ' TEXT';
+ break;
+ case 'datetime':
+ $field .= ' DATETIME';
+ break;
+ case 'date':
+ $field .= ' DATE';
+ break;
+ }
+ $field .= ' '.$f['null'].' '.$f['extra'];
+ // AUTO_INCREMENT -> IDENTITY
+ $field = str_replace("auto_increment", "IDENTITY", $field);
+ $fieldlist .= $field.','."\n";
+ }
+ $query = 'CREATE TABLE ['.$table.'] ('.$fieldlist.')';
+ $res = dbquery($query,array(),$debug);
+ if ($res) { /* add the keys */
+ foreach ($keys as $n => $k) {
+ $key = '';
+ foreach ($k['fields'] as $f) {
+ if ($key!='') $key.=',';
+ $key .= $f;
+ }
+ if ($k['primary']) {
+ $query = 'ALTER TABLE ['.$table.'] ADD CONSTRAINT '.$table.'_pkey PRIMARY KEY ('.$key.')';
+ } else {
+ $query = 'CREATE '.($k['unique']?'UNIQUE ':'').'INDEX '.$table.'_'.$n.'_idx ON ['.$table.'] ('.$key.')';
+ }
+ $res = dbquery($query,array(),$debug);
+ }
+ }
+ return $res;
+ break;
+
}
return false;
}
@@ -1179,8 +1281,36 @@
}
$query = 'INSERT INTO %0'.$table.' ('.$fields.') VALUES ('.$values.')';
break;
+
+ //LCARD
+
+ case 'mssql':
+ $fields = '';
+ $values = '';
+ foreach ($data as $f => $v) {
+ if ($fields != '') $fields .= ',';
+ if ($values != '') $values .= ',';
+
+ // Don't put IDENTITY columns into the command
+ if ($DB_STRUCTURE[$table]['fields'][$f]['extra'] != 'auto_increment') {
+ $fields .= $f;
+ if ($DB_STRUCTURE[$table]['fields'][$f]['type']=='int')
+ $values .= $v;
+ else if ($DB_STRUCTURE[$table]['fields'][$f]['type']=='datetime')
+ $values .= 'getdate()';
+ else
+ $values .= '\''.mssql_escape_string($v).'\'';
+ }
+ }
+
+ $query = 'INSERT INTO %0'.$table.' ('.$fields.') VALUES ('.$values.')';
+
+ break;
+ //LCARD
}
+
return dbquery($query,$params,$debug);
+
}
@@ -1190,6 +1320,7 @@
global $_POST;
global $MYSQL_QUERY;
global $PGSQL_QUERY;
+ global $MSSQL_QUERY;
global $DB_STRUCTURE;
global $DB_DATA;
@@ -1214,6 +1345,12 @@
$query = $PGSQL_QUERY;
$dbn = 'postgres';
break;
+ // LCARD
+ case 'mssql':
+ $query = $MSSQL_QUERY;
+ $dbn = 'mssql';
+ break;
+ //LCARD
}
$error = false;
$debug = (isset($_POST['debug']))?true:false;
@@ -1276,8 +1413,10 @@
$params['%1']=$CONFIG['database']['prefix'];
foreach ($DB_STRUCTURE as $t => $q) {
$params['%2']=$t;
+
if (!dbquery($query['droptable'],$params,$debug))
$error = true;
+
if (!dbcreatetable($CONFIG['database']['prefix'].$t,$q['fields'],$q['keys'],$debug)) {
msg('Table creation FAILED: '.$t,'fail');
$error = true;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-21 18:06:57
|
Revision: 333
http://openupload.svn.sourceforge.net/openupload/?rev=333&view=rev
Author: tsdogs
Date: 2009-08-21 18:06:47 +0000 (Fri, 21 Aug 2009)
Log Message:
-----------
Add MSSQL support, by Leonardo F. Cardoso
Modified Paths:
--------------
branches/v0.4/www/setup.inc.php
Added Paths:
-----------
branches/v0.4/lib/modules/db/mssql.inc.php
Added: branches/v0.4/lib/modules/db/mssql.inc.php
===================================================================
--- branches/v0.4/lib/modules/db/mssql.inc.php (rev 0)
+++ branches/v0.4/lib/modules/db/mssql.inc.php 2009-08-21 18:06:47 UTC (rev 333)
@@ -0,0 +1,275 @@
+<?php
+
+/*
+ * Code by Leonardo F. Cardoso - leo...@gm...
+ * 17 - August - 2009
+ *
+ * Known issues:
+ * - function mssql_escape_string is not with "Object Oriented" structure.
+ * - simulating "LIMIT / OFFSET" with bad performance
+ */
+
+/**
+ * Simulate mssql_escape_string
+ * @param $string_to_escape
+ * @return unknown_type
+ */
+function mssql_escape_string($string_to_escape) {
+ $replaced_string = str_replace("'","''",$string_to_escape);
+ return $replaced_string;
+}
+
+class mssqlDB extends dbBase {
+ var $config;
+ var $db;
+ var $prefix;
+
+
+ function mssqlDB($config = array()) {
+ $this->config = $config;
+ $this->prefix = $config['prefix'];
+ }
+
+ function init() {
+ $this->db = mssql_connect($this->config['host'], $this->config['user'], $this->config['password'])
+ or die('ERROR: connection to db failed!');
+ mssql_select_db($this->config['name']) or die('ERROR: database could not be opened.');
+ }
+
+ function free() {
+ mssql_close($this->db);
+ }
+
+ function newId($tbl,$field = 'id',$keys = array ()) {
+ $sql = 'SELECT max(['.$field.']) as newid FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ $res = mssql_query($sql);
+ $newid = mssql_fetch_assoc($res);
+ mssql_free_result($res);
+ return $id['newid']+1;
+ }
+
+ function newRandomId($tbl,$field = 'id',$size = 30, $alpha = false) {
+ $found = true;
+ while ($found) {
+ $id = randomName($size,$size,$alpha);
+ $sql = 'SELECT '.$field.' FROM ['.$this->prefix.$tbl.'] WHERE ['.$field.']=\''.$id.'\'';
+ $res = mssql_query($sql);
+ $found = mssql_num_rows($res)>0;
+ mssql_free_result($res);
+ }
+ return $id;
+ }
+
+ function count($tbl,$keys = array()) {
+ $sql = 'SELECT count(*) AS num FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ $res = mssql_query($sql);
+ $row = mssql_fetch_assoc($res);
+ mssql_free_result($res);
+ return $row['num'];
+ }
+
+ function read($tbl,$keys = array(), $sort = array(), $limit = '', $assoc = array()) {
+ $sql = 'SELECT * FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.(mssql_escape_string($v)).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ if (count($sort)>0) {
+ $sorting = '';
+ foreach ($sort as $s) {
+ if ($sorting!='') $sorting.=',';
+ $sorting .= $s;
+ }
+ $sql .= ' ORDER BY '.$sorting;
+ }
+
+ /* SQL Server doesn't have LIMIT/OFFSET
+ * Let's select limit+offset rows and let the code get the needed ones.
+ * Bad performance this way.
+ */
+ if ($limit != '') {
+
+ $l = explode(',',$limit);
+
+ $realLimit = $l[1];
+ $realOffset= $l[0];
+ $topClausule = $realLimit + $realOffset;
+
+ $sql = str_replace('SELECT * ', 'SELECT TOP ' . $topClausule . ' * ', $sql);
+
+ }
+
+ $res = mssql_query($sql);
+ if (!$res) { die('query failed: '.$sql); }
+ $result = array();
+
+ /* Let's ignore "offset" tuples */
+ for ($index = 0; $index < $realOffset; $index++) {
+ $row = mssql_fetch_assoc($res);
+ }
+
+ while ($row = mssql_fetch_assoc($res)) {
+ if (count($assoc)) { /* maybe there is a better way to do this? */
+ $str = '$result';
+ foreach ($assoc as $k) {
+ $str .= '[\''.$row[$k].'\']';
+ }
+ $str .= '=$row;';
+ eval($str);
+ } else {
+ $result[] = $row;
+ }
+ }
+
+ mssql_free_result($res);
+
+ return $result;
+ }
+
+ /* This is an extended function which extends the select criteria */
+ function readex($tbl,$criteria = array(), $sort = array(),$limit = '') {
+ $sql = 'SELECT * FROM ['.$this->prefix.$tbl.']';
+
+ if (count($criteria)>0) {
+ $where = '';
+ foreach ($criteria as $ands) {
+ $where_save = $where;
+ $where = '';
+ foreach ($ands as $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$v[0].']'.$v[1].'\''.(mssql_escape_string($v[2])).'\'';
+ }
+ if ($where_save!='') {
+ $where = $where_save.' OR ('.$where.')';
+ } else {
+ $where = '('.$where.')';
+ }
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ if (count($sort)>0) {
+ $sorting = '';
+ foreach ($sort as $s) {
+ if ($sorting!='') $sorting.=',';
+ $sorting .= $s;
+ }
+ $sql .= ' ORDER BY '.$sorting;
+ }
+
+ /* SQL Server doesn't have LIMIT/OFFSET
+ * Let's select limit+offset rows and let the code get the needed ones.
+ * Bad performance this way.
+ */
+ if ($limit != '') {
+
+ $l = explode(',',$limit);
+
+ $realLimit = $l[1];
+ $realOffset= $l[0];
+ $topClausule = $realLimit + $realOffset;
+
+ $sql = str_replace('SELECT * ', 'SELECT TOP ' . $topClausule . ' * ', $sql);
+
+ }
+
+ $res = mssql_query($sql);
+ if (!$res) { die('query failed: '.$sql); }
+ $result = array();
+
+ /* Let's ignore "offset" tuples */
+ for ($index = 0; $index < $realOffset; $index++) {
+ $row = mssql_fetch_assoc($res);
+ }
+
+ while ($row = mssql_fetch_assoc($res)) {
+ $result[] = $row;
+ }
+
+ mssql_free_result($res);
+ return $result;
+ }
+
+ function insert($tbl,$values,$fields = array()) {
+ $sql = 'INSERT INTO ['.$this->prefix.$tbl.']';
+ $flist = '';
+ $vlist = '';
+ if (count($fields)>0) {
+ foreach ($fields as $f) {
+ if ($flist!='') $flist .= ',';
+ if ($vlist!='') $vlist .= ',';
+ $flist .= '['.$f.']';
+ $vlist .= '\''.mssql_escape_string($values[$f]).'\'';
+ }
+ } else {
+ foreach ($values as $k => $v) {
+ if ($flist!='') $flist .= ',';
+ if ($vlist!='') $vlist .= ',';
+ $flist .= '['.$k.']';
+ $vlist .= '\''.mssql_escape_string($v).'\'';
+ }
+ }
+ $sql .= ' ('.$flist.') VALUES ('.$vlist.')';
+ mssql_query($sql) or die("ERROR: query failed: ".$sql);
+ }
+
+ function update($tbl,$values,$keys = array(),$fields = array()) {
+ $sql = 'UPDATE ['.$this->prefix.$tbl.']';
+ $set = '';
+ if (count($fields)>0) {
+ foreach ($fields as $f) {
+ if ($set!='') $set .= ',';
+ $set .= '['.$f.']=\''.mssql_escape_string($values[$f]).'\'';
+ }
+ } else {
+ foreach ($values as $k => $v) {
+ if ($set!='') $set .= ',';
+ $set .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ }
+ $sql .= ' SET '.$set;
+ if (count($keys)>0) { /* should always be */
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ mssql_query($sql);
+ }
+
+ function delete($tbl,$keys = array()) {
+ $sql = 'DELETE FROM ['.$this->prefix.$tbl.']';
+ if (count($keys)>0) {
+ $where = '';
+ foreach ($keys as $k => $v) {
+ if ($where != '') $where .= ' AND ';
+ $where .= '['.$k.']=\''.mssql_escape_string($v).'\'';
+ }
+ $sql .= ' WHERE '.$where;
+ }
+ mssql_query($sql);
+ }
+}
+
+?>
Modified: branches/v0.4/www/setup.inc.php
===================================================================
--- branches/v0.4/www/setup.inc.php 2009-08-21 17:56:58 UTC (rev 332)
+++ branches/v0.4/www/setup.inc.php 2009-08-21 18:06:47 UTC (rev 333)
@@ -36,6 +36,16 @@
*/
+/**
+ * Simulate mssql_escape_string
+ * @param $string_to_escape
+ * @return unknown_type
+ */
+function mssql_escape_string($string_to_escape) {
+ $replaced_string = str_replace("'","''",$string_to_escape);
+ return $replaced_string;
+}
+
if (!defined('__VALID_CALLING_SCRIPT')) die('DIRECT ACCESS IS DENIED');
ob_start();
@@ -104,6 +114,17 @@
'droptable' => 'DROP TABLE IF EXISTS %1%2',
);
+//LCARD
+$MSSQL_QUERY = array (
+ 'dropdb' => 'DROP DATABASE "%1"',
+ 'createdb' => 'CREATE DATABASE "%1"',
+ 'dropuser' => '',
+ 'createuser' => '',
+ 'grant' => '',
+ 'droptable' => 'IF EXISTS (SELECT name FROM sysobjects WHERE name = \'%1%2\' AND xtype=\'U\' ) DROP TABLE %1%2',
+);
+//LCARD
+
$DB_STRUCTURE = array (
'acl' => array (
'fields' => array (
@@ -445,6 +466,14 @@
msg('POSTGRESQL Support: not found','fail');
msg('POSTGRESQL is needed if you plan to use postgresql');
}
+ //LCARD - must config PHP.INI
+ if (function_exists('mssql_connect')) {
+ msg('MSSQL Support: exsists','ok');
+ } else {
+ msg('MSSQL Support: not found','fail');
+ msg('MSSQL is needed if you plan to use mssql');
+ }
+ //LCARD
if (function_exists('ldap_connect')) {
msg('LDAP Support: exsists','ok');
} else {
@@ -977,6 +1006,7 @@
}
function dbconnect($host,$user,$pwd,$db,$debug = false) {
+
global $dbhandle;
global $CONFIG;
@@ -1003,6 +1033,15 @@
return false;
}
break;
+ // LCARD
+ case 'mssql':
+ $dbhandle = mssql_connect($host, $user, $pwd);
+ if (!(mssql_select_db($db, $dbhandle))) {
+ if ($debug) echo '<div id="message">Reason: '.mssql_get_last_message().'</div>';
+ return false;
+ }
+ break;
+ // LCARD
default:
msg('ERROR: dbtype: '.$CONFIG['database']['type'].' not yet supported','fail');
return false;
@@ -1031,6 +1070,16 @@
return false;
}
break;
+ //LCARD
+ case 'mssql':
+ // DEBUG ALL SQL SERVER QUERIES
+ // print "<br>$query<br>";
+ if (! mssql_query($query) ) {
+ if ($debug) echo '<div id="message">Query failed: '.$query.'<br />Reason: '.mssql_get_last_message().'</div>';
+ return false;
+ }
+ break;
+ //LCARD
}
return true;
}
@@ -1083,6 +1132,9 @@
$query .= ')';
return dbquery($query,array(),$debug);
break;
+
+
+
case 'pgsql':
$fieldlist = '';
foreach ($fields as $k => $f) {
@@ -1143,6 +1195,55 @@
}
return $res;
break;
+
+
+ //LCARD -Attention to IDENTITY fields
+ case 'mssql':
+ $fieldlist = '';
+ foreach ($fields as $k => $f) {
+ $field = '['.$k.']';
+ switch ($f['type']) {
+ case 'char':
+ $field .= ' VARCHAR('.$f['size'].')';
+ break;
+ case 'int':
+ $field .= ' INT';
+ break;
+ case 'text':
+ $field .= ' TEXT';
+ break;
+ case 'datetime':
+ $field .= ' DATETIME';
+ break;
+ case 'date':
+ $field .= ' DATE';
+ break;
+ }
+ $field .= ' '.$f['null'].' '.$f['extra'];
+ // AUTO_INCREMENT -> IDENTITY
+ $field = str_replace("auto_increment", "IDENTITY", $field);
+ $fieldlist .= $field.','."\n";
+ }
+ $query = 'CREATE TABLE ['.$table.'] ('.$fieldlist.')';
+ $res = dbquery($query,array(),$debug);
+ if ($res) { /* add the keys */
+ foreach ($keys as $n => $k) {
+ $key = '';
+ foreach ($k['fields'] as $f) {
+ if ($key!='') $key.=',';
+ $key .= $f;
+ }
+ if ($k['primary']) {
+ $query = 'ALTER TABLE ['.$table.'] ADD CONSTRAINT '.$table.'_pkey PRIMARY KEY ('.$key.')';
+ } else {
+ $query = 'CREATE '.($k['unique']?'UNIQUE ':'').'INDEX '.$table.'_'.$n.'_idx ON ['.$table.'] ('.$key.')';
+ }
+ $res = dbquery($query,array(),$debug);
+ }
+ }
+ return $res;
+ break;
+
}
return false;
}
@@ -1180,8 +1281,36 @@
}
$query = 'INSERT INTO %0'.$table.' ('.$fields.') VALUES ('.$values.')';
break;
+
+ //LCARD
+
+ case 'mssql':
+ $fields = '';
+ $values = '';
+ foreach ($data as $f => $v) {
+ if ($fields != '') $fields .= ',';
+ if ($values != '') $values .= ',';
+
+ // Don't put IDENTITY columns into the command
+ if ($DB_STRUCTURE[$table]['fields'][$f]['extra'] != 'auto_increment') {
+ $fields .= $f;
+ if ($DB_STRUCTURE[$table]['fields'][$f]['type']=='int')
+ $values .= $v;
+ else if ($DB_STRUCTURE[$table]['fields'][$f]['type']=='datetime')
+ $values .= 'getdate()';
+ else
+ $values .= '\''.mssql_escape_string($v).'\'';
+ }
+ }
+
+ $query = 'INSERT INTO %0'.$table.' ('.$fields.') VALUES ('.$values.')';
+
+ break;
+ //LCARD
}
+
return dbquery($query,$params,$debug);
+
}
@@ -1191,6 +1320,7 @@
global $_POST;
global $MYSQL_QUERY;
global $PGSQL_QUERY;
+ global $MSSQL_QUERY;
global $DB_STRUCTURE;
global $DB_DATA;
@@ -1215,6 +1345,12 @@
$query = $PGSQL_QUERY;
$dbn = 'postgres';
break;
+ // LCARD
+ case 'mssql':
+ $query = $MSSQL_QUERY;
+ $dbn = 'mssql';
+ break;
+ //LCARD
}
$error = false;
$debug = (isset($_POST['debug']))?true:false;
@@ -1277,8 +1413,10 @@
$params['%1']=$CONFIG['database']['prefix'];
foreach ($DB_STRUCTURE as $t => $q) {
$params['%2']=$t;
+
if (!dbquery($query['droptable'],$params,$debug))
$error = true;
+
if (!dbcreatetable($CONFIG['database']['prefix'].$t,$q['fields'],$q['keys'],$debug)) {
msg('Table creation FAILED: '.$t,'fail');
$error = true;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-21 17:57:10
|
Revision: 332
http://openupload.svn.sourceforge.net/openupload/?rev=332&view=rev
Author: tsdogs
Date: 2009-08-21 17:56:58 +0000 (Fri, 21 Aug 2009)
Log Message:
-----------
add Brazilian Portuguese, by Leonardo F. Cardoso
Modified Paths:
--------------
trunk/www/setup.inc.php
Added Paths:
-----------
trunk/locale/pt_BR/
trunk/locale/pt_BR/LC_MESSAGES/
trunk/locale/pt_BR/LC_MESSAGES/openupload.mo
trunk/locale/pt_BR/LC_MESSAGES/openupload.po
trunk/locale/pt_BR.inc.php
trunk/templates/default/locale/pt_BR/
trunk/templates/default/locale/pt_BR/LC_MESSAGES/
trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.po
trunk/templates/default/locale/pt_BR.inc.php
Added: trunk/locale/pt_BR/LC_MESSAGES/openupload.mo
===================================================================
(Binary files differ)
Property changes on: trunk/locale/pt_BR/LC_MESSAGES/openupload.mo
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/locale/pt_BR/LC_MESSAGES/openupload.po
===================================================================
--- trunk/locale/pt_BR/LC_MESSAGES/openupload.po (rev 0)
+++ trunk/locale/pt_BR/LC_MESSAGES/openupload.po 2009-08-21 17:56:58 UTC (rev 332)
@@ -0,0 +1,291 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenUpload\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Alessandro Briosi <ts...@br...>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+
+msgid "Login incorrect!"
+msgstr "Usuário / Senha incorretos."
+
+msgid "plugin include file not found: %1"
+msgstr "Arquivo de include de plugin não encontrado: %1"
+
+msgid "IP Banned"
+msgstr "IP Banido"
+
+msgid "THERE HAS BEEN A PERMISSION ERROR. PLEASE TRY ONE OF THE ALLOWED OPTIONS!"
+msgstr "OCORREU UM ERRO DE PERMISSÕES - ACESSO NEGADO. POR FAVOR, SELECIONE UMA DAS OPÇÕES PERMITIDAS"
+
+msgid "ERROR: database folder not found!"
+msgstr "ERRO: pasta do banco de dados não encontrada"
+
+msgid "ERROR: Could not create folder for %1 table!"
+msgstr "ERRO: não foi possível criar pasta para a tabela %1!"
+
+msgid "ERROR: Could not create file for %1 table!"
+msgstr "ERRO: não foi possível criar o arquivo para a tabela %1!"
+
+msgid "Unsupported query criteria %1"
+msgstr "Critério de consulta não suportado %1"
+
+msgid "Login"
+msgstr "Entrar"
+
+msgid "User registration"
+msgstr "Registro de usuário"
+
+msgid "User options"
+msgstr "Opções de usuário"
+
+msgid "Preferences"
+msgstr "Preferências"
+
+msgid "Logout"
+msgstr "Sair"
+
+msgid "Registration is not supported by Auth Module"
+msgstr "Inscrição não suportada pelo módulo de autenticação"
+
+msgid "Username already taken, choose a new value"
+msgstr "Nome de usuário já existe, por favor selecione outro"
+
+msgid "Login name must be at least 5 characters long!"
+msgstr "Login deve ter pelo menos 5 caracteres!"
+
+msgid "Login name contains an invalid character. Valid vharacters are %1"
+msgstr "Login contém caracteres inválidos. Os caracteres válidos são %1"
+
+msgid "Please insert Full Name"
+msgstr "Por favor informe nome completo"
+
+msgid "Please insert a valid e-mail!"
+msgstr "Por favor informe um endereço válido de e-mail!"
+
+msgid "Password must be at least 5 characters long!"
+msgstr "A senha deve ter pelo menos 5 caracteres!"
+
+msgid "Passwords do not match! please retype."
+msgstr "As senhas não conferem! Por favor, tente novamente."
+
+msgid "[%1] User registration confirmation e-mail"
+msgstr "[%1] E-mail de confirmação de registro de usuário"
+
+msgid "Registration completed successfully. Have fun!"
+msgstr "Registro concluído com sucesso."
+
+msgid "User profile change not supported by Auth Module"
+msgstr "Modificação do profile de usuário não é suportado pelo módulo de autenticação"
+
+msgid "Full Name cannot be empty!"
+msgstr "Nome completo não pode estar vazio!"
+
+msgid "Please enter a valid e-mail address!"
+msgstr "Por favor, informe um endereço de e-mail válido!"
+
+msgid "Password must be at least 5 charaters long!"
+msgstr "A senha deve ter pelo menos 5 caracteres!"
+
+msgid "Old password is wrong!"
+msgstr "A senha antiga está incorreta!"
+
+msgid "New passwords do not match!"
+msgstr "As novas senhas não conferem!"
+
+msgid "Password has been changed!"
+msgstr "A senha foi modificada com sucesso!"
+
+msgid "My Files"
+msgstr "Meus arquivos"
+
+msgid "Public Files"
+msgstr "Arquivos públicos"
+
+msgid "File upload"
+msgstr "Envio de arquivo"
+
+msgid "File download"
+msgstr "Download de arquivo"
+
+msgid "File Removal"
+msgstr "Remoção de arquivo"
+
+msgid "File Upload"
+msgstr "Envio de arquivo"
+
+msgid "Upload failed for Unknown error code: %1"
+msgstr "Envio de arquivo falhou devido a erro desconhecido: %1"
+
+msgid "Maximum file size exceeded!"
+msgstr "Excedido tamanho máximo de arquivo!"
+
+msgid "Requested file does not exist!"
+msgstr "O arquivo solicitado não existe!"
+
+msgid "Wrong file id!"
+msgstr "ID de arquivo não existe!"
+
+msgid "Administration"
+msgstr "Administração"
+
+msgid "User administration not supported by Auth Module"
+msgstr "Administração de usuários não é suportada pelo módulo Auth"
+
+msgid "Cannot delete yourself!"
+msgstr "Não é possível remover a si próprio!"
+
+msgid "Group administration not supported by Auth Module"
+msgstr "Administração de grupos não é suportada pelo módulo Auth"
+
+msgid "Please provide a valid group name!"
+msgstr "Por favor informe um nome válido de grupo!"
+
+msgid "Any group"
+msgstr "Todos os grupos"
+
+msgid "ANY"
+msgstr "TODOS"
+
+msgid "Allow"
+msgstr "Permitir"
+
+msgid "Deny"
+msgstr "Negar"
+
+msgid "Specified criteria is not valid!"
+msgstr "Critério especificado é inválido!"
+
+msgid "Please specify at least one criteria!"
+msgstr "Por favor, especifique pelo menos um critério!"
+
+msgid "Enable"
+msgstr "Habilitar"
+
+msgid "Disable"
+msgstr "Desabilitar"
+
+msgid "Any"
+msgstr "Todos"
+
+msgid "Options for this group already exsist, please use the edit function!"
+msgstr "Opções para esse grupo já existem, por favor utilize outra função de edição!"
+
+msgid "Configuration sucessfully saved!"
+msgstr "Configuração salva com sucesso!"
+
+msgid "Configuration file could not be saved, please proceed with the download!"
+msgstr "Arquivo de configuração não pode ser salvo, por favor prossiga com o download!"
+
+msgid "IP %1 has been banned!"
+msgstr "IP %1 está banido!"
+
+msgid "IP %1 was already in state: %2!"
+msgstr "IP %1 já está no estado: %2!"
+
+msgid "ID"
+msgstr "ID"
+
+msgid "Language \"%1\" cannot be empty"
+msgstr "Idioma \"%1\" não pode estar vazio"
+
+msgid "Language \"%1\" already exists!"
+msgstr "Idioma \"%1\" já existe!"
+
+msgid "Name"
+msgstr "Nome"
+
+msgid "Language \"%1\" cannot be empty!"
+msgstr "Idioma \"%1\" não pode estar vazio!"
+
+msgid "Locale"
+msgstr "Localização"
+
+msgid "Charset"
+msgstr "Charset"
+
+msgid "LDAP connection failed!"
+msgstr "Conexão LDAP falhou!"
+
+msgid "Limit the mimetypes a user can upload"
+msgstr "Limita os tipos MIME que um usuário pode enviar"
+
+msgid "Allowed mime types"
+msgstr "Tipos MIME permitidos"
+
+msgid "Types in message"
+msgstr "Tipos na mensagem"
+
+msgid "WARNING: no mime types defined. Plugin has been disabled!"
+msgstr "ATENÇÃO: nenhum tipo MIME definido. O plugin foi desativado!"
+
+msgid "This file type (%1) is not allowed on this site!"
+msgstr "Este tipo de arquivo (%1) não é permitido neste site!"
+
+msgid "Add captcha protection to file download and user registration"
+msgstr "Adicionar proteção captcha para download de arquivos e registro de usuários"
+
+msgid "Wrong captcha code! please try again."
+msgstr "Código captcha incorreto! Por favor tente novamente."
+
+msgid "Compress the uploaded files"
+msgstr "Comprimir os arquivos enviados"
+
+msgid "Command to be executed. One per line."
+msgstr "Comandos para serem executados. Um por linha"
+
+msgid "Extensions corresponding to commands."
+msgstr "Extensões correspondentes a comandos"
+
+msgid "Name of compression commands"
+msgstr "Nome dos comandos de compressão"
+
+msgid "Limit the maximum size of a uploaded file"
+msgstr "Limita o tamanho máximo de um arquivo enviado"
+
+msgid "Maximum File Size"
+msgstr "Tamanho máximo de arquivo"
+
+msgid "Add option to send e-mail to the uploader or to another e-mail address"
+msgstr "Adiciona opção de enviar e-mail para o usuário que realiza o envio e para outro endereço de e-mail"
+
+msgid "Your e-mail address isn't valid!"
+msgstr "Votre adresse de courriel est invalide!"
+
+msgid "Destination e-mail address isn't valid!"
+msgstr "Endereço de e-mail destino não é válido!"
+
+msgid "Information about your uploaded file: %1"
+msgstr "Informação relativa ao seu arquivo enviado: %1"
+
+msgid "An upload was delivered to you"
+msgstr "Um arquivo foi enviado para você"
+
+msgid "E-mail was sent!"
+msgstr "E-mail enviado!"
+
+msgid "E-mail was sent to: %1!"
+msgstr "E-mail enviado para: %1!"
+
+msgid "Option to add password protection for file download"
+msgstr "Opção para adicionar senha para o download de arquivo"
+
+msgid "Wrong password!"
+msgstr "Senha incorreta!"
+
+msgid "Maximum number of days an upload will be kept on the server."
+msgstr "Número máximo de dias que um arquivo será mantido no servidor."
+
+msgid "N. Of Days"
+msgstr "N. de dias"
+
+msgid "Files will be kept on our server for %1 days"
+msgstr "Arquivos serão mantidos no nossos servidores por %1 dias"
+
+msgid "Never"
+msgstr "Jamais"
+
Added: trunk/locale/pt_BR.inc.php
===================================================================
--- trunk/locale/pt_BR.inc.php (rev 0)
+++ trunk/locale/pt_BR.inc.php 2009-08-21 17:56:58 UTC (rev 332)
@@ -0,0 +1,96 @@
+<?php
+// Brazilian Portuguese - By Leonardo F. Cardoso - leo...@gm...
+$tr["Login incorrect!"] = "Usuário / Senha incorretos.";
+$tr["plugin include file not found: %1"] = "Arquivo de include de plugin não encontrado: %1";
+$tr["IP Banned"] = "IP Banido";
+$tr["THERE HAS BEEN A PERMISSION ERROR. PLEASE TRY ONE OF THE ALLOWED OPTIONS!"] = "OCORREU UM ERRO DE PERMISSÕES - ACESSO NEGADO. POR FAVOR, SELECIONE UMA DAS OPÇÕES PERMITIDAS";
+$tr["ERROR: database folder not found!"] = "ERRO: pasta do banco de dados não encontrada";
+$tr["ERROR: Could not create folder for %1 table!"] = "ERRO: não foi possível criar pasta para a tabela %1!";
+$tr["ERROR: Could not create file for %1 table!"] = "ERRO: não foi possível criar o arquivo para a tabela %1!";
+$tr["Unsupported query criteria %1"] = "Critério de consulta não suportado %1";
+$tr["Login"] = "Entrar";
+$tr["User registration"] = "Registro de usuário";
+$tr["User options"] = "Opções de usuário";
+$tr["Preferences"] = "Preferências";
+$tr["Logout"] = "Sair";
+$tr["Registration is not supported by Auth Module"] = "Inscrição não suportada pelo módulo de autenticação";
+$tr["Username already taken, choose a new value"] = "Nome de usuário já existe, por favor selecione outro";
+$tr["Login name must be at least 5 characters long!"] = "Login deve ter pelo menos 5 caracteres!";
+$tr["Login name contains an invalid character. Valid vharacters are %1"] = "Login contém caracteres inválidos. Os caracteres válidos são %1";
+$tr["Please insert Full Name"] = "Por favor informe nome completo";
+$tr["Please insert a valid e-mail!"] = "Por favor informe um endereço válido de e-mail!";
+$tr["Password must be at least 5 characters long!"] = "A senha deve ter pelo menos 5 caracteres!";
+$tr["Passwords do not match! please retype."] = "As senhas não conferem! Por favor, tente novamente.";
+$tr["[%1] User registration confirmation e-mail"] = "[%1] E-mail de confirmação de registro de usuário";
+$tr["Registration completed successfully. Have fun!"] = "Registro concluído com sucesso.";
+$tr["User profile change not supported by Auth Module"] = "Modificação do profile de usuário não é suportado pelo módulo de autenticação";
+$tr["Full Name cannot be empty!"] = "Nome completo não pode estar vazio!";
+$tr["Please enter a valid e-mail address!"] = "Por favor, informe um endereço de e-mail válido!";
+$tr["Password must be at least 5 charaters long!"] = "A senha deve ter pelo menos 5 caracteres!";
+$tr["Old password is wrong!"] = "A senha antiga está incorreta!";
+$tr["New passwords do not match!"] = "As novas senhas não conferem!";
+$tr["Password has been changed!"] = "A senha foi modificada com sucesso!";
+$tr["My Files"] = "Meus arquivos";
+$tr["Public Files"] = "Arquivos públicos";
+$tr["File upload"] = "Envio de arquivo";
+$tr["File download"] = "Download de arquivo";
+$tr["File Removal"] = "Remoção de arquivo";
+$tr["File Upload"] = "Envio de arquivo";
+$tr["Upload failed for Unknown error code: %1"] = "Envio de arquivo falhou devido a erro desconhecido: %1";
+$tr["Maximum file size exceeded!"] = "Excedido tamanho máximo de arquivo!";
+$tr["Requested file does not exist!"] = "O arquivo solicitado não existe!";
+$tr["Wrong file id!"] = "ID de arquivo não existe!";
+$tr["Administration"] = "Administração";
+$tr["User administration not supported by Auth Module"] = "Administração de usuários não é suportada pelo módulo Auth";
+$tr["Cannot delete yourself!"] = "Não é possível remover a si próprio!";
+$tr["Group administration not supported by Auth Module"] = "Administração de grupos não é suportada pelo módulo Auth";
+$tr["Please provide a valid group name!"] = "Por favor informe um nome válido de grupo!";
+$tr["Any group"] = "Todos os grupos";
+$tr["ANY"] = "TODOS";
+$tr["Allow"] = "Permitir";
+$tr["Deny"] = "Negar";
+$tr["Specified criteria is not valid!"] = "Critério especificado é inválido!";
+$tr["Please specify at least one criteria!"] = "Por favor, especifique pelo menos um critério!";
+$tr["Enable"] = "Habilitar";
+$tr["Disable"] = "Desabilitar";
+$tr["Any"] = "Todos";
+$tr["Options for this group already exsist, please use the edit function!"] = "Opções para esse grupo já existem, por favor utilize outra função de edição!";
+$tr["Configuration sucessfully saved!"] = "Configuração salva com sucesso!";
+$tr["Configuration file could not be saved, please proceed with the download!"] = "Arquivo de configuração não pode ser salvo, por favor prossiga com o download!";
+$tr["IP %1 has been banned!"] = "IP %1 está banido!";
+$tr["IP %1 was already in state: %2!"] = "IP %1 já está no estado: %2!";
+$tr["ID"] = "ID";
+$tr["Language \"%1\" cannot be empty"] = "Idioma \"%1\" não pode estar vazio";
+$tr["Language \"%1\" already exists!"] = "Idioma \"%1\" já existe!";
+$tr["Name"] = "Nome";
+$tr["Language \"%1\" cannot be empty!"] = "Idioma \"%1\" não pode estar vazio!";
+$tr["Locale"] = "Localização";
+$tr["Charset"] = "Charset";
+$tr["LDAP connection failed!"] = "Conexão LDAP falhou!";
+$tr["Limit the mimetypes a user can upload"] = "Limita os tipos MIME que um usuário pode enviar";
+$tr["Allowed mime types"] = "Tipos MIME permitidos";
+$tr["Types in message"] = "Tipos na mensagem";
+$tr["WARNING: no mime types defined. Plugin has been disabled!"] = "ATENÇÃO: nenhum tipo MIME definido. O plugin foi desativado!";
+$tr["This file type (%1) is not allowed on this site!"] = "Este tipo de arquivo (%1) não é permitido neste site!";
+$tr["Add captcha protection to file download and user registration"] = "Adicionar proteção captcha para download de arquivos e registro de usuários";
+$tr["Wrong captcha code! please try again."] = "Código captcha incorreto! Por favor tente novamente.";
+$tr["Compress the uploaded files"] = "Comprimir os arquivos enviados";
+$tr["Command to be executed. One per line."] = "Comandos para serem executados. Um por linha";
+$tr["Extensions corresponding to commands."] = "Extensões correspondentes a comandos";
+$tr["Name of compression commands"] = "Nome dos comandos de compressão";
+$tr["Limit the maximum size of a uploaded file"] = "Limita o tamanho máximo de um arquivo enviado";
+$tr["Maximum File Size"] = "Tamanho máximo de arquivo";
+$tr["Add option to send e-mail to the uploader or to another e-mail address"] = "Adiciona opção de enviar e-mail para o usuário que realiza o envio e para outro endereço de e-mail";
+$tr["Your e-mail address isn't valid!"] = "Votre adresse de courriel est invalide!";
+$tr["Destination e-mail address isn't valid!"] = "Endereço de e-mail destino não é válido!";
+$tr["Information about your uploaded file: %1"] = "Informação relativa ao seu arquivo enviado: %1";
+$tr["An upload was delivered to you"] = "Um arquivo foi enviado para você";
+$tr["E-mail was sent!"] = "E-mail enviado!";
+$tr["E-mail was sent to: %1!"] = "E-mail enviado para: %1!";
+$tr["Option to add password protection for file download"] = "Opção para adicionar senha para o download de arquivo";
+$tr["Wrong password!"] = "Senha incorreta!";
+$tr["Maximum number of days an upload will be kept on the server."] = "Número máximo de dias que um arquivo será mantido no servidor.";
+$tr["N. Of Days"] = "N. de dias";
+$tr["Files will be kept on our server for %1 days"] = "Arquivos serão mantidos no nossos servidores por %1 dias";
+$tr["Never"] = "Jamais";
+?>
Added: trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
===================================================================
(Binary files differ)
Property changes on: trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.po
===================================================================
--- trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.po (rev 0)
+++ trunk/templates/default/locale/pt_BR/LC_MESSAGES/template.po 2009-08-21 17:56:58 UTC (rev 332)
@@ -0,0 +1,621 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenUpload\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Alessandro Briosi <ts...@br...>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+
+msgid "Your IP has been blocked!"
+msgstr "Seu endereço IP foi bloqueado!"
+
+msgid "You cannot use this site."
+msgstr "Você não pode utilizar este site."
+
+msgid "If you think this is a misconfiguration please send an email to the site owner"
+msgstr "Se isso parecer um engano, por favor envie um email para o administrador"
+
+msgid "Captcha code"
+msgstr "Código Captcha"
+
+msgid "Reload Image"
+msgstr "Recarregar a imagem"
+
+msgid "Please enter the following captcha to proceed for the removal"
+msgstr "Por favor, digite o captcha para prosseguir com a remoção"
+
+msgid "Protection"
+msgstr "Proteção"
+
+msgid "Captcha"
+msgstr "Proteger com código Captcha"
+
+msgid "Please enter the following captcha to proceed for the download"
+msgstr "Por favor, digite o captcha para prosseguir com o download"
+
+msgid "Use Captcha"
+msgstr "Usar Captcha"
+
+msgid "Compress the files"
+msgstr "Comprimir os arquivos"
+
+msgid "No compression"
+msgstr "Sem compressão"
+
+msgid "Password"
+msgstr "Senha"
+
+msgid "The download is password protected."
+msgstr "O download é protegido por senha."
+
+msgid "Password protect"
+msgstr "Protegido por senha"
+
+msgid "Send password in e-mail"
+msgstr "Enviar a senha por e-mail"
+
+msgid "You are receiving this message because someone uploaded a file on our OpenUpload server for you."
+msgstr "Você recebeu este e-mail pois um novo arquivo foi disponibilizado para você nos nossos servidores."
+
+msgid "Description"
+msgstr "Descrição"
+
+msgid "User message"
+msgstr "Mensagem para o usuário"
+
+msgid "To download the file open the following link in a browser"
+msgstr "Para fazer o download, abra o seguinte link no seu navegador"
+
+msgid "To remove the file from our server open the following link in a browser"
+msgstr "Para remover o arquivo do servidor, abra o seguinte link no seu navegador"
+
+msgid "For complains please send an email to"
+msgstr "Em caso de abuso, por favor envie e-mail para "
+
+msgid "Send me an e-mail"
+msgstr "Me envie um e-mail"
+
+msgid "Send"
+msgstr "Enviar"
+
+msgid "Send e-mail to"
+msgstr "Enviar e-mail para"
+
+msgid "Send remove link"
+msgstr "Enviar link de remoção"
+
+msgid "e-mail Subject"
+msgstr "Assunto do e-mail"
+
+msgid "e-mail Message"
+msgstr "Mensagem do e-mail"
+
+msgid "Your e-mail address"
+msgstr "Seu endereço de e-mail"
+
+msgid "Expires on"
+msgstr "Expira em"
+
+msgid "Only the following mime types are allowed"
+msgstr "Apenas os seguintes tipos MIME são aceitos"
+
+msgid "Are you sure you want to delete the selected plugins?"
+msgstr "Tem certeza que deseja remover os plugins selecionados?"
+
+msgid "Are you sure you want to delete the selected plugin?"
+msgstr "Tem certeza que deseja remover o plugin selecionado?"
+
+msgid "S"
+msgstr "S"
+
+msgid "ID"
+msgstr "ID"
+
+msgid "Plugin"
+msgstr "Plugin"
+
+msgid "Group"
+msgstr "Grupo"
+
+msgid "Access"
+msgstr "Acesso"
+
+msgid "Actions"
+msgstr "Ações"
+
+msgid "Add"
+msgstr "Adicionar"
+
+msgid "IP"
+msgstr "Endereço IP"
+
+msgid "Priority"
+msgstr "Prioridade"
+
+msgid "Confirm"
+msgstr "Confirmar"
+
+msgid "Name"
+msgstr "Nome completo"
+
+msgid "Gruppo"
+msgstr "Grupo"
+
+msgid "Rights set?"
+msgstr "Privilégios configurados?"
+
+msgid "Any"
+msgstr "Todos"
+
+msgid "Yes"
+msgstr "Sim"
+
+msgid "No"
+msgstr "Não"
+
+msgid "Plugins ACL"
+msgstr "Plugins ACL"
+
+msgid "Plugins Options"
+msgstr "Opções dos plugins"
+
+msgid "Settings"
+msgstr "Configurações"
+
+msgid "Options"
+msgstr "Opções"
+
+msgid "Login name"
+msgstr "Login"
+
+msgid "Retype Password"
+msgstr "Redigite a senha"
+
+msgid "Full Name"
+msgstr "Nome completo"
+
+msgid "e-mail"
+msgstr "E-mail"
+
+msgid "Preferred language"
+msgstr "Idioma de preferência"
+
+msgid "Active"
+msgstr "Ativo"
+
+msgid "Are you sure you want to delete the selected banned ips?"
+msgstr "Tem certeza que deseja remover os IPs banidos selecionados?"
+
+msgid "Are you sure you want to delete the selected banned ip?"
+msgstr "Tem certeza que deseja remover o IP banido selecionado?"
+
+msgid "Are you sure you want to delete the selected languages?"
+msgstr "Tem certeza que deseja remover os idiomas selecionados?"
+
+msgid "Are you sure you want to delete the selected language?"
+msgstr "Tem certeza que deseja remover o idioma selecionado?"
+
+msgid "Locale"
+msgstr "Local"
+
+msgid "Browser recon"
+msgstr "Browser recon"
+
+msgid "Charset"
+msgstr "Charset"
+
+msgid "Plugin does not have any option to be configured"
+msgstr "Plugin não tem opções de configuração"
+
+msgid "Translation module"
+msgstr "Módulo de tradução"
+
+msgid "Select one"
+msgstr "Selecione um"
+
+msgid "Default language"
+msgstr "Idioma default"
+
+msgid "Authentication module"
+msgstr "Módulo de autenticação"
+
+msgid "(LDAP Configuration needs to be done<br /> by hand for now)"
+msgstr "(Por enquanto, a configuração LDAP deve ser feita manualmente)"
+
+msgid "Site title"
+msgstr "Título do site"
+
+msgid "WebMaster E-mail"
+msgstr "E-mail do webmaster (administrador do site)"
+
+msgid "Site E-mail"
+msgstr "E-mail do site"
+
+msgid "Confirm registration with e-mail"
+msgstr "Confirmar registro através de e-mail"
+
+msgid "Template"
+msgstr "Template"
+
+msgid "Template Footer"
+msgstr "Rodapé do Template"
+
+msgid "Maximum upload size (in MB)"
+msgstr "Tamanho máximo de upload (em MB)"
+
+msgid "Maximum download time (in Min)"
+msgstr "Tempo máximo de download (em minutos)"
+
+msgid "0 disables it"
+msgstr "0 torna desativado"
+
+msgid "Max num. of file uploaded per upload"
+msgstr "Número máximo de arquivos enviados por upload"
+
+msgid "Use shorter links?"
+msgstr "Utilizar links curtos?"
+
+msgid "Length of IDs (suggested min 6)"
+msgstr "Tamanho dos identificadores (mínimo sugerido de 6)"
+
+msgid "Use alphanumerical IDs?"
+msgstr "Utilizar identificadores alfanuméricos?"
+
+msgid "Allow unprotected file removal?"
+msgstr "Permitir remoção desprotegida de arquivos?"
+
+msgid "Upload tracking method"
+msgstr "Método de acompanhamento de upload"
+
+msgid "Enable activity logging?"
+msgstr "Habilitar registro de atividades?"
+
+msgid "Database logging level"
+msgstr "Nível de log no banco de dados"
+
+msgid "Syslog logging level"
+msgstr "Nível de log no Syslog"
+
+msgid "Save Changes"
+msgstr "Salvar modificações"
+
+msgid "Download config file"
+msgstr "Download do arquivo de configuração"
+
+msgid "This are the configured settings for a review"
+msgstr "Estas são as configurações atuais"
+
+msgid "Filter"
+msgstr "Filtros"
+
+msgid "All"
+msgstr "Todos"
+
+msgid "Errors"
+msgstr "Erros"
+
+msgid "Security"
+msgstr "Segurança"
+
+msgid "Warnings"
+msgstr "Alertas"
+
+msgid "Notice"
+msgstr "Notificação"
+
+msgid "Info"
+msgstr "Informação"
+
+msgid "Date"
+msgstr "Data"
+
+msgid "Type"
+msgstr "Tipo"
+
+msgid "User"
+msgstr "Usuário"
+
+msgid "Module"
+msgstr "Módulo"
+
+msgid "Action"
+msgstr "Ação"
+
+msgid "Real Action"
+msgstr "Ação real"
+
+msgid "Result"
+msgstr "Resultado"
+
+msgid "Additional Info"
+msgstr "Informação adicional"
+
+msgid "Maintenence"
+msgstr "Manutenção"
+
+msgid "This options let you delete files based on some options."
+msgstr "Estas opções permitem a remoção de arquivos baseada em algumas opções."
+
+msgid "Please select one or more criteria for file deletion"
+msgstr "Por favor, selecione um ou mais critérios para remoção de arquivos"
+
+msgid "Delete files older than"
+msgstr "Remover arquivos mais antigos que"
+
+msgid "days"
+msgstr "dias"
+
+msgid "Which user name is"
+msgstr "Que o nome do usuário seja"
+
+msgid "Which upload day is"
+msgstr "Que o dia de upload seja"
+
+msgid "Which size is bigger than"
+msgstr "Que o tamanho seja maior que"
+
+msgid "Proceed"
+msgstr "Continuar"
+
+msgid "Expiration plugin"
+msgstr "Plugin de expiração"
+
+msgid "To delete files marked as expired by the expire plugin press the \"Delete expired\" button."
+msgstr "Para apagar os arquivos expirados pelo plugin de expiração, clique no botão \"Apagar Expirados\"."
+
+msgid "Delete expired"
+msgstr "Apagar Expirados"
+
+msgid "Are you sure you want to delete the selected users?"
+msgstr "Tem certeza que deseja apagar os usuários selecionados?"
+
+msgid "Are you sure you want to delete the selected user?"
+msgstr "Tem certeza que deseja apagar o usuário selecionado?"
+
+msgid "Login"
+msgstr "Entrar"
+
+msgid "E-mail"
+msgstr "E-mail"
+
+msgid "Plugins"
+msgstr "Plugins"
+
+msgid "Files"
+msgstr "Arquivos"
+
+msgid "Users"
+msgstr "Usuários"
+
+msgid "Groups"
+msgstr "Grupos"
+
+msgid "Rights"
+msgstr "Permissões"
+
+msgid "Languages"
+msgstr "Idiomas"
+
+msgid "Banned"
+msgstr "Banidos"
+
+msgid "Logs"
+msgstr "Logs"
+
+msgid "Deletion Result"
+msgstr "Resultado da remoção"
+
+msgid "The following files have been deleted."
+msgstr "Os seguintes arquivos foram removidos."
+
+msgid "The following files will be deleted, proceed?"
+msgstr "Os seguintes arquivos serão removidos, continuar?"
+
+msgid "Yes, delete all"
+msgstr "Sim, remover todos"
+
+msgid "No files matched the criteria"
+msgstr "Nenhum arquivo atente ao critério"
+
+msgid "Back to Maintenance"
+msgstr "Retornar para Manutenção"
+
+msgid "Are you sure you want to delete the selected groups?"
+msgstr "Tem certeza que deseja remover os grupos selecionados?"
+
+msgid "Are you sure you want to delete the selected group?"
+msgstr "Tem certeza que deseja remover o grupo selecionado?"
+
+msgid "Group Name"
+msgstr "Nome do Grupo"
+
+msgid "Here you can administer"
+msgstr "Utilitários administrativos"
+
+msgid "Banned IPs"
+msgstr "IP's banidos"
+
+msgid "Logs / Statistics"
+msgstr "Logs / Estatísticas"
+
+msgid "PLEASE BE CAREFULL WHEN MODIFING THE RIGHTS!"
+msgstr "CUIDADO AO ALTERAR OS PRIVILÉGIOS!"
+
+msgid "Editing rights for group"
+msgstr "Edição de privilégios para grupo"
+
+msgid "Right"
+msgstr "Privilégio"
+
+msgid "Resulting ACL"
+msgstr "ACL Resultado"
+
+msgid "From ACL"
+msgstr "ACL Original"
+
+msgid "default"
+msgstr "Defaut"
+
+msgid "<< Back"
+msgstr "<< Retornar"
+
+msgid "Apply changes"
+msgstr "Aplicar mudanças"
+
+msgid "Files List"
+msgstr "Lista de arquivos"
+
+msgid "Maintenance"
+msgstr "Manutenção"
+
+msgid "Are you sure you want to delete the selected files?"
+msgstr "Tem certeza que deseja remover os arquivos selecionados?"
+
+msgid "Are you sure you want to delete the selected file?"
+msgstr "Tem certeza que deseja remover o arquivo selecionado?"
+
+msgid "Id"
+msgstr "Id"
+
+msgid "Upload Date"
+msgstr "Data do envio"
+
+msgid "The file you requested the removal needs some input before you can proceed"
+msgstr "A operação de remoção requer alguns dados para prosseguir"
+
+msgid "Download link"
+msgstr "Link para Download"
+
+msgid "Remove link"
+msgstr "Link para Remoção"
+
+msgid "Upload a new file"
+msgstr "Enviar novo arquivo"
+
+msgid "Uploading"
+msgstr "Enviando"
+
+msgid "please wait ..."
+msgstr "Aguarde ..."
+
+msgid "Please enter the File Information requested"
+msgstr "Por favor digite a informação necesária"
+
+msgid "File code"
+msgstr "Código do arquivo"
+
+msgid "File description"
+msgstr "Descrição do arquivo"
+
+msgid "File name"
+msgstr "Nome do arquivo"
+
+msgid "File size"
+msgstr "Tamanho do arquivo"
+
+msgid "Select the file to be uploaded"
+msgstr "Selecione o arquivo a ser enviado"
+
+msgid "Maximum allowed upload size"
+msgstr "Tamanho máximo permitido para envio"
+
+msgid "Upload"
+msgstr "Enviar"
+
+msgid "The file you requested the download needs some input before you can proceed"
+msgstr "A operação de download requer alguns dados para prosseguir"
+
+msgid "You can now proceed downloading the file"
+msgstr "Você pode agora fazer download do arquivo"
+
+msgid "Uploaded on"
+msgstr "Enviado em "
+
+msgid "Download file"
+msgstr "Download do arquivo"
+
+msgid "Complete upload"
+msgstr "Concluir envio"
+
+msgid "FILE HAS BEEN SUCCESSFULLY REMOVED"
+msgstr "ARQUIVO REMOVIDO COM SUCESSO"
+
+msgid "You requested to remove the following file"
+msgstr "Você selecionou a remoção do seguinte arquivo"
+
+msgid "Confirm removal"
+msgstr "Confirmar remoção"
+
+msgid "Dear "
+msgstr "Prezado"
+
+msgid "This e-mail message is sent to you to confirm your account registration has a valid e-mail address."
+msgstr "Esta mensagem foi enviada a você para que confirme que o registro foi feito com um endereço válido de e-mail."
+
+msgid "Open the following link in a browser to confirm your account."
+msgstr "Abra o link abaixo em um navegador para ativar sua conta."
+
+msgid "Best regards"
+msgstr "Atenciosamente"
+
+msgid "User login"
+msgstr "Login usuário"
+
+msgid "User name"
+msgstr "Nome usuário"
+
+msgid "You don't have an account?"
+msgstr "Não tem uma conta?"
+
+msgid "Register here"
+msgstr "Registre-se aqui"
+
+msgid "or you can"
+msgstr "ou então, você pode"
+
+msgid "Login here"
+msgstr "Entrar aqui"
+
+msgid "Language"
+msgstr "Idioma"
+
+msgid "Change"
+msgstr "Mudar"
+
+msgid "Registration succeeded"
+msgstr "Registro concluído com sucesso"
+
+msgid "An e-mail has been sent for the account activation"
+msgstr "Um e-mail foi enviado para concluir a ativação da conta"
+
+msgid "Please follow the e-mail instructions to activate your account."
+msgstr "Por favor, siga as instruções do e-mail para ativar sua conta."
+
+msgid "back to home"
+msgstr "Voltar ao início"
+
+msgid "Old password"
+msgstr "Senha atual"
+
+msgid "New password"
+msgstr "Nova senha"
+
+msgid "Retype password"
+msgstr "Redigite a senha"
+
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgid "Your account registration has been confirmed."
+msgstr "Sua inscrição está confirmada."
+
+msgid "You can now proceed with the login"
+msgstr "Você agora pode seguir para o login"
+
+msgid "here"
+msgstr "aqui"
+
Added: trunk/templates/default/locale/pt_BR.inc.php
===================================================================
--- trunk/templates/default/locale/pt_BR.inc.php (rev 0)
+++ trunk/templates/default/locale/pt_BR.inc.php 2009-08-21 17:56:58 UTC (rev 332)
@@ -0,0 +1,206 @@
+<?php
+// Brazilian Portuguese - By Leonardo F. Cardoso - leo...@gm...
+$tr["Your IP has been blocked!"] = "Seu endereço IP foi bloqueado!";
+$tr["You cannot use this site."] = "Você não pode utilizar este site.";
+$tr["If you think this is a misconfiguration please send an email to the site owner"] = "Se isso parecer um engano, por favor envie um email para o administrador";
+$tr["Captcha code"] = "Código Captcha";
+$tr["Reload Image"] = "Recarregar a imagem";
+$tr["Please enter the following captcha to proceed for the removal"] = "Por favor, digite o captcha para prosseguir com a remoção";
+$tr["Protection"] = "Proteção";
+$tr["Captcha"] = "Proteger com código Captcha";
+$tr["Please enter the following captcha to proceed for the download"] = "Por favor, digite o captcha para prosseguir com o download";
+$tr["Use Captcha"] = "Usar Captcha";
+$tr["Compress the files"] = "Comprimir os arquivos";
+$tr["No compression"] = "Sem compressão";
+$tr["Password"] = "Senha";
+$tr["The download is password protected."] = "O download é protegido por senha.";
+$tr["Password protect"] = "Protegido por senha";
+$tr["Send password in e-mail"] = "Enviar a senha por e-mail";
+$tr["You are receiving this message because someone uploaded a file on our OpenUpload server for you."] = "Você recebeu este e-mail pois um novo arquivo foi disponibilizado para você nos nossos servidores.";
+$tr["Description"] = "Descrição";
+$tr["User message"] = "Mensagem para o usuário";
+$tr["To download the file open the following link in a browser"] = "Para fazer o download, abra o seguinte link no seu navegador";
+$tr["To remove the file from our server open the following link in a browser"] = "Para remover o arquivo do servidor, abra o seguinte link no seu navegador";
+$tr["For complains please send an email to"] = "Em caso de abuso, por favor envie e-mail para ";
+$tr["Send me an e-mail"] = "Me envie um e-mail";
+$tr["Send"] = "Enviar";
+$tr["Send e-mail to"] = "Enviar e-mail para";
+$tr["Send remove link"] = "Enviar link de remoção";
+$tr["e-mail Subject"] = "Assunto do e-mail";
+$tr["e-mail Message"] = "Mensagem do e-mail";
+$tr["Your e-mail address"] = "Seu endereço de e-mail";
+$tr["Expires on"] = "Expira em";
+$tr["Only the following mime types are allowed"] = "Apenas os seguintes tipos MIME são aceitos";
+$tr["Are you sure you want to delete the selected plugins?"] = "Tem certeza que deseja remover os plugins selecionados?";
+$tr["Are you sure you want to delete the selected plugin?"] = "Tem certeza que deseja remover o plugin selecionado?";
+$tr["S"] = "S";
+$tr["ID"] = "ID";
+$tr["Plugin"] = "Plugin";
+$tr["Group"] = "Grupo";
+$tr["Access"] = "Acesso";
+$tr["Actions"] = "Ações";
+$tr["Add"] = "Adicionar";
+$tr["IP"] = "Endereço IP";
+$tr["Priority"] = "Prioridade";
+$tr["Confirm"] = "Confirmar";
+$tr["Name"] = "Nome completo";
+$tr["Gruppo"] = "Grupo";
+$tr["Rights set?"] = "Privilégios configurados?";
+$tr["Any"] = "Todos";
+$tr["Yes"] = "Sim";
+$tr["No"] = "Não";
+$tr["Plugins ACL"] = "Plugins ACL";
+$tr["Plugins Options"] = "Opções dos plugins";
+$tr["Settings"] = "Configurações";
+$tr["Options"] = "Opções";
+$tr["Login name"] = "Login";
+$tr["Retype Password"] = "Redigite a senha";
+$tr["Full Name"] = "Nome completo";
+$tr["e-mail"] = "E-mail";
+$tr["Preferred language"] = "Idioma de preferência";
+$tr["Active"] = "Ativo";
+$tr["Are you sure you want to delete the selected banned ips?"] = "Tem certeza que deseja remover os IPs banidos selecionados?";
+$tr["Are you sure you want to delete the selected banned ip?"] = "Tem certeza que deseja remover o IP banido selecionado?";
+$tr["Are you sure you want to delete the selected languages?"] = "Tem certeza que deseja remover os idiomas selecionados?";
+$tr["Are you sure you want to delete the selected language?"] = "Tem certeza que deseja remover o idioma selecionado?";
+$tr["Locale"] = "Local";
+$tr["Browser recon"] = "Browser recon";
+$tr["Charset"] = "Charset";
+$tr["Plugin does not have any option to be configured"] = "Plugin não tem opções de configuração";
+$tr["Translation module"] = "Módulo de tradução";
+$tr["Select one"] = "Selecione um";
+$tr["Default language"] = "Idioma default";
+$tr["Authentication module"] = "Módulo de autenticação";
+$tr["(LDAP Configuration needs to be done<br /> by hand for now)"] = "(Por enquanto, a configuração LDAP deve ser feita manualmente)";
+$tr["Site title"] = "Título do site";
+$tr["WebMaster E-mail"] = "E-mail do webmaster (administrador do site)";
+$tr["Site E-mail"] = "E-mail do site";
+$tr["Confirm registration with e-mail"] = "Confirmar registro através de e-mail";
+$tr["Template"] = "Template";
+$tr["Template Footer"] = "Rodapé do Template";
+$tr["Maximum upload size (in MB)"] = "Tamanho máximo de upload (em MB)";
+$tr["Maximum download time (in Min)"] = "Tempo máximo de download (em minutos)";
+$tr["0 disables it"] = "0 torna desativado";
+$tr["Max num. of file uploaded per upload"] = "Número máximo de arquivos enviados por upload";
+$tr["Use shorter links?"] = "Utilizar links curtos?";
+$tr["Length of IDs (suggested min 6)"] = "Tamanho dos identificadores (mínimo sugerido de 6)";
+$tr["Use alphanumerical IDs?"] = "Utilizar identificadores alfanuméricos?";
+$tr["Allow unprotected file removal?"] = "Permitir remoção desprotegida de arquivos?";
+$tr["Upload tracking method"] = "Método de acompanhamento de upload";
+$tr["Enable activity logging?"] = "Habilitar registro de atividades?";
+$tr["Database logging level"] = "Nível de log no banco de dados";
+$tr["Syslog logging level"] = "Nível de log no Syslog";
+$tr["Save Changes"] = "Salvar modificações";
+$tr["Download config file"] = "Download do arquivo de configuração";
+$tr["This are the configured settings for a review"] = "Estas são as configurações atuais";
+$tr["Filter"] = "Filtros";
+$tr["All"] = "Todos";
+$tr["Errors"] = "Erros";
+$tr["Security"] = "Segurança";
+$tr["Warnings"] = "Alertas";
+$tr["Notice"] = "Notificação";
+$tr["Info"] = "Informação";
+$tr["Date"] = "Data";
+$tr["Type"] = "Tipo";
+$tr["User"] = "Usuário";
+$tr["Module"] = "Módulo";
+$tr["Action"] = "Ação";
+$tr["Real Action"] = "Ação real";
+$tr["Result"] = "Resultado";
+$tr["Additional Info"] = "Informação adicional";
+$tr["Maintenence"] = "Manutenção";
+$tr["This options let you delete files based on some options."] = "Estas opções permitem a remoção de arquivos baseada em algumas opções.";
+$tr["Please select one or more criteria for file deletion"] = "Por favor, selecione um ou mais critérios para remoção de arquivos";
+$tr["Delete files older than"] = "Remover arquivos mais antigos que";
+$tr["days"] = "dias";
+$tr["Which user name is"] = "Que o nome do usuário seja";
+$tr["Which upload day is"] = "Que o dia de upload seja";
+$tr["Which size is bigger than"] = "Que o tamanho seja maior que";
+$tr["Proceed"] = "Continuar";
+$tr["Expiration plugin"] = "Plugin de expiração";
+$tr["To delete files marked as expired by the expire plugin press the \"Delete expired\" button."] = "Para apagar os arquivos expirados pelo plugin de expiração, clique no botão \"Apagar Expirados\".";
+$tr["Delete expired"] = "Apagar Expirados";
+$tr["Are you sure you want to delete the selected users?"] = "Tem certeza que deseja apagar os usuários selecionados?";
+$tr["Are you sure you want to delete the selected user?"] = "Tem certeza que deseja apagar o usuário selecionado?";
+$tr["Login"] = "Entrar";
+$tr["E-mail"] = "E-mail";
+$tr["Plugins"] = "Plugins";
+$tr["Files"] = "Arquivos";
+$tr["Users"] = "Usuários";
+$tr["Groups"] = "Grupos";
+$tr["Rights"] = "Permissões";
+$tr["Languages"] = "Idiomas";
+$tr["Banned"] = "Banidos";
+$tr["Logs"] = "Logs";
+$tr["Deletion Result"] = "Resultado da remoção";
+$tr["The following files have been deleted."] = "Os seguintes arquivos foram removidos.";
+$tr["The following files will be deleted, proceed?"] = "Os seguintes arquivos serão removidos, continuar?";
+$tr["Yes, delete all"] = "Sim, remover todos";
+$tr["No files matched the criteria"] = "Nenhum arquivo atente ao critério";
+$tr["Back to Maintenance"] = "Retornar para Manutenção";
+$tr["Are you sure you want to delete the selected groups?"] = "Tem certeza que deseja remover os grupos selecionados?";
+$tr["Are you sure you want to delete the selected group?"] = "Tem certeza que deseja remover o grupo selecionado?";
+$tr["Group Name"] = "Nome do Grupo";
+$tr["Here you can administer"] = "Utilitários administrativos";
+$tr["Banned IPs"] = "IP's banidos";
+$tr["Logs / Statistics"] = "Logs / Estatísticas";
+$tr["PLEASE BE CAREFULL WHEN MODIFING THE RIGHTS!"] = "CUIDADO AO ALTERAR OS PRIVILÉGIOS!";
+$tr["Editing rights for group"] = "Edição de privilégios para grupo";
+$tr["Right"] = "Privilégio";
+$tr["Resulting ACL"] = "ACL Resultado";
+$tr["From ACL"] = "ACL Original";
+$tr["default"] = "Defaut";
+$tr["<< Back"] = "<< Retornar";
+$tr["Apply changes"] = "Aplicar mudanças";
+$tr["Files List"] = "Lista de arquivos";
+$tr["Maintenance"] = "Manutenção";
+$tr["Are you sure you want to delete the selected files?"] = "Tem certeza que deseja remover os arquivos selecionados?";
+$tr["Are you sure you want to delete the selected file?"] = "Tem certeza que deseja remover o arquivo selecionado?";
+$tr["Id"] = "Id";
+$tr["Upload Date"] = "Data do envio";
+$tr["The file you requested the removal needs some input before you can proceed"] = "A operação de remoção requer alguns dados para prosseguir";
+$tr["Download link"] = "Link para Download";
+$tr["Remove link"] = "Link para Remoção";
+$tr["Upload a new file"] = "Enviar novo arquivo";
+$tr["Uploading"] = "Enviando";
+$tr["please wait ..."] = "Aguarde ...";
+$tr["Please enter the File Information requested"] = "Por favor digite a informação necesária";
+$tr["File code"] = "Código do arquivo";
+$tr["File description"] = "Descrição do arquivo";
+$tr["File name"] = "Nome do arquivo";
+$tr["File size"] = "Tamanho do arquivo";
+$tr["Select the file to be uploaded"] = "Selecione o arquivo a ser enviado";
+$tr["Maximum allowed upload size"] = "Tamanho máximo permitido para envio";
+$tr["Upload"] = "Enviar";
+$tr["The file you requested the download needs some input before you can proceed"] = "A operação de download requer alguns dados para prosseguir";
+$tr["You can now proceed downloading the file"] = "Você pode agora fazer download do arquivo";
+$tr["Uploaded on"] = "Enviado em ";
+$tr["Download file"] = "Download do arquivo";
+$tr["Complete upload"] = "Concluir envio";
+$tr["FILE HAS BEEN SUCCESSFULLY REMOVED"] = "ARQUIVO REMOVIDO COM SUCESSO";
+$tr["You requested to remove the following file"] = "Você selecionou a remoção do seguinte arquivo";
+$tr["Confirm removal"] = "Confirmar remoção";
+$tr["Dear "] = "Prezado";
+$tr["This e-mail message is sent to you to confirm your account registration has a valid e-mail address."] = "Esta mensagem foi enviada a você para que confirme que o registro foi feito com um endereço válido de e-mail.";
+$tr["Open the following link in a browser to confirm your account."] = "Abra o link abaixo em um navegador para ativar sua conta.";
+$tr["Best regards"] = "Atenciosamente";
+$tr["User login"] = "Login usuário";
+$tr["User name"] = "Nome usuário";
+$tr["You don't have an account?"] = "Não tem uma conta?";
+$tr["Register here"] = "Registre-se aqui";
+$tr["or you can"] = "ou então, você pode";
+$tr["Login here"] = "Entrar aqui";
+$tr["Language"] = "Idioma";
+$tr["Change"] = "Mudar";
+$tr["Registration succeeded"] = "Registro concluído com sucesso";
+$tr["An e-mail has been sent for the account activation"] = "Um e-mail foi enviado para concluir a ativação da conta";
+$tr["Please follow the e-mail instructions to activate your account."] = "Por favor, siga as instruções do e-mail para ativar sua conta.";
+$tr["back to home"] = "Voltar ao início";
+$tr["Old password"] = "Senha atual";
+$tr["New password"] = "Nova senha";
+$tr["Retype password"] = "Redigite a senha";
+$tr["Cancel"] = "Cancelar";
+$tr["Your account registration has been confirmed."] = "Sua inscrição está confirmada.";
+$tr["You can now proceed with the login"] = "Você agora pode seguir para o login";
+$tr["here"] = "aqui";
+?>
Modified: trunk/www/setup.inc.php
===================================================================
--- trunk/www/setup.inc.php 2009-08-21 17:54:37 UTC (rev 331)
+++ trunk/www/setup.inc.php 2009-08-21 17:56:58 UTC (rev 332)
@@ -1,4 +1,5 @@
<?php
+
/**
* Project: OpenUpload
* File: index.php
@@ -266,7 +267,7 @@
),
'users' => array (
array ( 'id' => 1, 'login' => '%1', 'password' => '%2', 'name' => 'Administrator', 'group_name' => '%3', 'email' => '%6',
- 'lang' => 'en', 'reg_date' => '', 'regid' => '', 'active' => 1 ),
+ 'lang' => 'en', 'reg_date' => '2009-01-01', 'regid' => '', 'active' => 1 ),
),
'plugin_acl' => array (
array ( 'id' => '1', 'group_name' => '%3', 'plugin' => 'password', 'access' => 'enable'),
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-21 17:54:45
|
Revision: 331
http://openupload.svn.sourceforge.net/openupload/?rev=331&view=rev
Author: tsdogs
Date: 2009-08-21 17:54:37 +0000 (Fri, 21 Aug 2009)
Log Message:
-----------
tool to convert from php to po translation
Added Paths:
-----------
branches/v0.4/locale/tools/php2po.php
Added: branches/v0.4/locale/tools/php2po.php
===================================================================
--- branches/v0.4/locale/tools/php2po.php (rev 0)
+++ branches/v0.4/locale/tools/php2po.php 2009-08-21 17:54:37 UTC (rev 331)
@@ -0,0 +1,38 @@
+#!/usr/bin/env php
+<?php
+
+$header = 'msgid ""
+msgstr ""
+"Project-Id-Version: OpenUpload\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"';
+
+
+if ($_SERVER['argc'] != 3) {
+ echo "Usage: php2po.php <phpfile> <pofile>\n";
+ exit (-1);
+}
+
+$src = $_SERVER['argv'][1];
+$out = $_SERVER['argv'][2];
+
+require_once($src);
+
+$outlines = '';
+
+foreach ($tr as $k => $v) {
+ $outlines .= 'msgid "'.str_replace('"','\"',$k).'"'."\n";
+ $outlines .= 'msgstr "'.str_replace('"','\"',$v).'"'."\n\n";
+}
+
+$outlines = $header."\n\n".$outlines;
+
+file_put_contents($out,$outlines);
+
+?>
+
+
Property changes on: branches/v0.4/locale/tools/php2po.php
___________________________________________________________________
Added: svn:executable
+ *
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-08-21 17:52:57
|
Revision: 330
http://openupload.svn.sourceforge.net/openupload/?rev=330&view=rev
Author: tsdogs
Date: 2009-08-21 17:52:47 +0000 (Fri, 21 Aug 2009)
Log Message:
-----------
add Brazilian Portuguese, by Leonardo F. Cardoso
Modified Paths:
--------------
branches/v0.4/sql/mysql/2_base.sql
branches/v0.4/sql/pgsql/2_base.sql
branches/v0.4/sql/txt/langs.txt
branches/v0.4/www/setup.inc.php
Added Paths:
-----------
branches/v0.4/locale/pt_BR/
branches/v0.4/locale/pt_BR/LC_MESSAGES/
branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.mo
branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.po
branches/v0.4/locale/pt_BR.inc.php
branches/v0.4/templates/default/locale/pt_BR/
branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/
branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.po
branches/v0.4/templates/default/locale/pt_BR.inc.php
Added: branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.mo
===================================================================
(Binary files differ)
Property changes on: branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.mo
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.po
===================================================================
--- branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.po (rev 0)
+++ branches/v0.4/locale/pt_BR/LC_MESSAGES/openupload.po 2009-08-21 17:52:47 UTC (rev 330)
@@ -0,0 +1,291 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenUpload\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Alessandro Briosi <ts...@br...>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+
+msgid "Login incorrect!"
+msgstr "Usuário / Senha incorretos."
+
+msgid "plugin include file not found: %1"
+msgstr "Arquivo de include de plugin não encontrado: %1"
+
+msgid "IP Banned"
+msgstr "IP Banido"
+
+msgid "THERE HAS BEEN A PERMISSION ERROR. PLEASE TRY ONE OF THE ALLOWED OPTIONS!"
+msgstr "OCORREU UM ERRO DE PERMISSÕES - ACESSO NEGADO. POR FAVOR, SELECIONE UMA DAS OPÇÕES PERMITIDAS"
+
+msgid "ERROR: database folder not found!"
+msgstr "ERRO: pasta do banco de dados não encontrada"
+
+msgid "ERROR: Could not create folder for %1 table!"
+msgstr "ERRO: não foi possível criar pasta para a tabela %1!"
+
+msgid "ERROR: Could not create file for %1 table!"
+msgstr "ERRO: não foi possível criar o arquivo para a tabela %1!"
+
+msgid "Unsupported query criteria %1"
+msgstr "Critério de consulta não suportado %1"
+
+msgid "Login"
+msgstr "Entrar"
+
+msgid "User registration"
+msgstr "Registro de usuário"
+
+msgid "User options"
+msgstr "Opções de usuário"
+
+msgid "Preferences"
+msgstr "Preferências"
+
+msgid "Logout"
+msgstr "Sair"
+
+msgid "Registration is not supported by Auth Module"
+msgstr "Inscrição não suportada pelo módulo de autenticação"
+
+msgid "Username already taken, choose a new value"
+msgstr "Nome de usuário já existe, por favor selecione outro"
+
+msgid "Login name must be at least 5 characters long!"
+msgstr "Login deve ter pelo menos 5 caracteres!"
+
+msgid "Login name contains an invalid character. Valid vharacters are %1"
+msgstr "Login contém caracteres inválidos. Os caracteres válidos são %1"
+
+msgid "Please insert Full Name"
+msgstr "Por favor informe nome completo"
+
+msgid "Please insert a valid e-mail!"
+msgstr "Por favor informe um endereço válido de e-mail!"
+
+msgid "Password must be at least 5 characters long!"
+msgstr "A senha deve ter pelo menos 5 caracteres!"
+
+msgid "Passwords do not match! please retype."
+msgstr "As senhas não conferem! Por favor, tente novamente."
+
+msgid "[%1] User registration confirmation e-mail"
+msgstr "[%1] E-mail de confirmação de registro de usuário"
+
+msgid "Registration completed successfully. Have fun!"
+msgstr "Registro concluído com sucesso."
+
+msgid "User profile change not supported by Auth Module"
+msgstr "Modificação do profile de usuário não é suportado pelo módulo de autenticação"
+
+msgid "Full Name cannot be empty!"
+msgstr "Nome completo não pode estar vazio!"
+
+msgid "Please enter a valid e-mail address!"
+msgstr "Por favor, informe um endereço de e-mail válido!"
+
+msgid "Password must be at least 5 charaters long!"
+msgstr "A senha deve ter pelo menos 5 caracteres!"
+
+msgid "Old password is wrong!"
+msgstr "A senha antiga está incorreta!"
+
+msgid "New passwords do not match!"
+msgstr "As novas senhas não conferem!"
+
+msgid "Password has been changed!"
+msgstr "A senha foi modificada com sucesso!"
+
+msgid "My Files"
+msgstr "Meus arquivos"
+
+msgid "Public Files"
+msgstr "Arquivos públicos"
+
+msgid "File upload"
+msgstr "Envio de arquivo"
+
+msgid "File download"
+msgstr "Download de arquivo"
+
+msgid "File Removal"
+msgstr "Remoção de arquivo"
+
+msgid "File Upload"
+msgstr "Envio de arquivo"
+
+msgid "Upload failed for Unknown error code: %1"
+msgstr "Envio de arquivo falhou devido a erro desconhecido: %1"
+
+msgid "Maximum file size exceeded!"
+msgstr "Excedido tamanho máximo de arquivo!"
+
+msgid "Requested file does not exist!"
+msgstr "O arquivo solicitado não existe!"
+
+msgid "Wrong file id!"
+msgstr "ID de arquivo não existe!"
+
+msgid "Administration"
+msgstr "Administração"
+
+msgid "User administration not supported by Auth Module"
+msgstr "Administração de usuários não é suportada pelo módulo Auth"
+
+msgid "Cannot delete yourself!"
+msgstr "Não é possível remover a si próprio!"
+
+msgid "Group administration not supported by Auth Module"
+msgstr "Administração de grupos não é suportada pelo módulo Auth"
+
+msgid "Please provide a valid group name!"
+msgstr "Por favor informe um nome válido de grupo!"
+
+msgid "Any group"
+msgstr "Todos os grupos"
+
+msgid "ANY"
+msgstr "TODOS"
+
+msgid "Allow"
+msgstr "Permitir"
+
+msgid "Deny"
+msgstr "Negar"
+
+msgid "Specified criteria is not valid!"
+msgstr "Critério especificado é inválido!"
+
+msgid "Please specify at least one criteria!"
+msgstr "Por favor, especifique pelo menos um critério!"
+
+msgid "Enable"
+msgstr "Habilitar"
+
+msgid "Disable"
+msgstr "Desabilitar"
+
+msgid "Any"
+msgstr "Todos"
+
+msgid "Options for this group already exsist, please use the edit function!"
+msgstr "Opções para esse grupo já existem, por favor utilize outra função de edição!"
+
+msgid "Configuration sucessfully saved!"
+msgstr "Configuração salva com sucesso!"
+
+msgid "Configuration file could not be saved, please proceed with the download!"
+msgstr "Arquivo de configuração não pode ser salvo, por favor prossiga com o download!"
+
+msgid "IP %1 has been banned!"
+msgstr "IP %1 está banido!"
+
+msgid "IP %1 was already in state: %2!"
+msgstr "IP %1 já está no estado: %2!"
+
+msgid "ID"
+msgstr "ID"
+
+msgid "Language \"%1\" cannot be empty"
+msgstr "Idioma \"%1\" não pode estar vazio"
+
+msgid "Language \"%1\" already exists!"
+msgstr "Idioma \"%1\" já existe!"
+
+msgid "Name"
+msgstr "Nome"
+
+msgid "Language \"%1\" cannot be empty!"
+msgstr "Idioma \"%1\" não pode estar vazio!"
+
+msgid "Locale"
+msgstr "Localização"
+
+msgid "Charset"
+msgstr "Charset"
+
+msgid "LDAP connection failed!"
+msgstr "Conexão LDAP falhou!"
+
+msgid "Limit the mimetypes a user can upload"
+msgstr "Limita os tipos MIME que um usuário pode enviar"
+
+msgid "Allowed mime types"
+msgstr "Tipos MIME permitidos"
+
+msgid "Types in message"
+msgstr "Tipos na mensagem"
+
+msgid "WARNING: no mime types defined. Plugin has been disabled!"
+msgstr "ATENÇÃO: nenhum tipo MIME definido. O plugin foi desativado!"
+
+msgid "This file type (%1) is not allowed on this site!"
+msgstr "Este tipo de arquivo (%1) não é permitido neste site!"
+
+msgid "Add captcha protection to file download and user registration"
+msgstr "Adicionar proteção captcha para download de arquivos e registro de usuários"
+
+msgid "Wrong captcha code! please try again."
+msgstr "Código captcha incorreto! Por favor tente novamente."
+
+msgid "Compress the uploaded files"
+msgstr "Comprimir os arquivos enviados"
+
+msgid "Command to be executed. One per line."
+msgstr "Comandos para serem executados. Um por linha"
+
+msgid "Extensions corresponding to commands."
+msgstr "Extensões correspondentes a comandos"
+
+msgid "Name of compression commands"
+msgstr "Nome dos comandos de compressão"
+
+msgid "Limit the maximum size of a uploaded file"
+msgstr "Limita o tamanho máximo de um arquivo enviado"
+
+msgid "Maximum File Size"
+msgstr "Tamanho máximo de arquivo"
+
+msgid "Add option to send e-mail to the uploader or to another e-mail address"
+msgstr "Adiciona opção de enviar e-mail para o usuário que realiza o envio e para outro endereço de e-mail"
+
+msgid "Your e-mail address isn't valid!"
+msgstr "Votre adresse de courriel est invalide!"
+
+msgid "Destination e-mail address isn't valid!"
+msgstr "Endereço de e-mail destino não é válido!"
+
+msgid "Information about your uploaded file: %1"
+msgstr "Informação relativa ao seu arquivo enviado: %1"
+
+msgid "An upload was delivered to you"
+msgstr "Um arquivo foi enviado para você"
+
+msgid "E-mail was sent!"
+msgstr "E-mail enviado!"
+
+msgid "E-mail was sent to: %1!"
+msgstr "E-mail enviado para: %1!"
+
+msgid "Option to add password protection for file download"
+msgstr "Opção para adicionar senha para o download de arquivo"
+
+msgid "Wrong password!"
+msgstr "Senha incorreta!"
+
+msgid "Maximum number of days an upload will be kept on the server."
+msgstr "Número máximo de dias que um arquivo será mantido no servidor."
+
+msgid "N. Of Days"
+msgstr "N. de dias"
+
+msgid "Files will be kept on our server for %1 days"
+msgstr "Arquivos serão mantidos no nossos servidores por %1 dias"
+
+msgid "Never"
+msgstr "Jamais"
+
Added: branches/v0.4/locale/pt_BR.inc.php
===================================================================
--- branches/v0.4/locale/pt_BR.inc.php (rev 0)
+++ branches/v0.4/locale/pt_BR.inc.php 2009-08-21 17:52:47 UTC (rev 330)
@@ -0,0 +1,96 @@
+<?php
+// Brazilian Portuguese - By Leonardo F. Cardoso - leo...@gm...
+$tr["Login incorrect!"] = "Usuário / Senha incorretos.";
+$tr["plugin include file not found: %1"] = "Arquivo de include de plugin não encontrado: %1";
+$tr["IP Banned"] = "IP Banido";
+$tr["THERE HAS BEEN A PERMISSION ERROR. PLEASE TRY ONE OF THE ALLOWED OPTIONS!"] = "OCORREU UM ERRO DE PERMISSÕES - ACESSO NEGADO. POR FAVOR, SELECIONE UMA DAS OPÇÕES PERMITIDAS";
+$tr["ERROR: database folder not found!"] = "ERRO: pasta do banco de dados não encontrada";
+$tr["ERROR: Could not create folder for %1 table!"] = "ERRO: não foi possível criar pasta para a tabela %1!";
+$tr["ERROR: Could not create file for %1 table!"] = "ERRO: não foi possível criar o arquivo para a tabela %1!";
+$tr["Unsupported query criteria %1"] = "Critério de consulta não suportado %1";
+$tr["Login"] = "Entrar";
+$tr["User registration"] = "Registro de usuário";
+$tr["User options"] = "Opções de usuário";
+$tr["Preferences"] = "Preferências";
+$tr["Logout"] = "Sair";
+$tr["Registration is not supported by Auth Module"] = "Inscrição não suportada pelo módulo de autenticação";
+$tr["Username already taken, choose a new value"] = "Nome de usuário já existe, por favor selecione outro";
+$tr["Login name must be at least 5 characters long!"] = "Login deve ter pelo menos 5 caracteres!";
+$tr["Login name contains an invalid character. Valid vharacters are %1"] = "Login contém caracteres inválidos. Os caracteres válidos são %1";
+$tr["Please insert Full Name"] = "Por favor informe nome completo";
+$tr["Please insert a valid e-mail!"] = "Por favor informe um endereço válido de e-mail!";
+$tr["Password must be at least 5 characters long!"] = "A senha deve ter pelo menos 5 caracteres!";
+$tr["Passwords do not match! please retype."] = "As senhas não conferem! Por favor, tente novamente.";
+$tr["[%1] User registration confirmation e-mail"] = "[%1] E-mail de confirmação de registro de usuário";
+$tr["Registration completed successfully. Have fun!"] = "Registro concluído com sucesso.";
+$tr["User profile change not supported by Auth Module"] = "Modificação do profile de usuário não é suportado pelo módulo de autenticação";
+$tr["Full Name cannot be empty!"] = "Nome completo não pode estar vazio!";
+$tr["Please enter a valid e-mail address!"] = "Por favor, informe um endereço de e-mail válido!";
+$tr["Password must be at least 5 charaters long!"] = "A senha deve ter pelo menos 5 caracteres!";
+$tr["Old password is wrong!"] = "A senha antiga está incorreta!";
+$tr["New passwords do not match!"] = "As novas senhas não conferem!";
+$tr["Password has been changed!"] = "A senha foi modificada com sucesso!";
+$tr["My Files"] = "Meus arquivos";
+$tr["Public Files"] = "Arquivos públicos";
+$tr["File upload"] = "Envio de arquivo";
+$tr["File download"] = "Download de arquivo";
+$tr["File Removal"] = "Remoção de arquivo";
+$tr["File Upload"] = "Envio de arquivo";
+$tr["Upload failed for Unknown error code: %1"] = "Envio de arquivo falhou devido a erro desconhecido: %1";
+$tr["Maximum file size exceeded!"] = "Excedido tamanho máximo de arquivo!";
+$tr["Requested file does not exist!"] = "O arquivo solicitado não existe!";
+$tr["Wrong file id!"] = "ID de arquivo não existe!";
+$tr["Administration"] = "Administração";
+$tr["User administration not supported by Auth Module"] = "Administração de usuários não é suportada pelo módulo Auth";
+$tr["Cannot delete yourself!"] = "Não é possível remover a si próprio!";
+$tr["Group administration not supported by Auth Module"] = "Administração de grupos não é suportada pelo módulo Auth";
+$tr["Please provide a valid group name!"] = "Por favor informe um nome válido de grupo!";
+$tr["Any group"] = "Todos os grupos";
+$tr["ANY"] = "TODOS";
+$tr["Allow"] = "Permitir";
+$tr["Deny"] = "Negar";
+$tr["Specified criteria is not valid!"] = "Critério especificado é inválido!";
+$tr["Please specify at least one criteria!"] = "Por favor, especifique pelo menos um critério!";
+$tr["Enable"] = "Habilitar";
+$tr["Disable"] = "Desabilitar";
+$tr["Any"] = "Todos";
+$tr["Options for this group already exsist, please use the edit function!"] = "Opções para esse grupo já existem, por favor utilize outra função de edição!";
+$tr["Configuration sucessfully saved!"] = "Configuração salva com sucesso!";
+$tr["Configuration file could not be saved, please proceed with the download!"] = "Arquivo de configuração não pode ser salvo, por favor prossiga com o download!";
+$tr["IP %1 has been banned!"] = "IP %1 está banido!";
+$tr["IP %1 was already in state: %2!"] = "IP %1 já está no estado: %2!";
+$tr["ID"] = "ID";
+$tr["Language \"%1\" cannot be empty"] = "Idioma \"%1\" não pode estar vazio";
+$tr["Language \"%1\" already exists!"] = "Idioma \"%1\" já existe!";
+$tr["Name"] = "Nome";
+$tr["Language \"%1\" cannot be empty!"] = "Idioma \"%1\" não pode estar vazio!";
+$tr["Locale"] = "Localização";
+$tr["Charset"] = "Charset";
+$tr["LDAP connection failed!"] = "Conexão LDAP falhou!";
+$tr["Limit the mimetypes a user can upload"] = "Limita os tipos MIME que um usuário pode enviar";
+$tr["Allowed mime types"] = "Tipos MIME permitidos";
+$tr["Types in message"] = "Tipos na mensagem";
+$tr["WARNING: no mime types defined. Plugin has been disabled!"] = "ATENÇÃO: nenhum tipo MIME definido. O plugin foi desativado!";
+$tr["This file type (%1) is not allowed on this site!"] = "Este tipo de arquivo (%1) não é permitido neste site!";
+$tr["Add captcha protection to file download and user registration"] = "Adicionar proteção captcha para download de arquivos e registro de usuários";
+$tr["Wrong captcha code! please try again."] = "Código captcha incorreto! Por favor tente novamente.";
+$tr["Compress the uploaded files"] = "Comprimir os arquivos enviados";
+$tr["Command to be executed. One per line."] = "Comandos para serem executados. Um por linha";
+$tr["Extensions corresponding to commands."] = "Extensões correspondentes a comandos";
+$tr["Name of compression commands"] = "Nome dos comandos de compressão";
+$tr["Limit the maximum size of a uploaded file"] = "Limita o tamanho máximo de um arquivo enviado";
+$tr["Maximum File Size"] = "Tamanho máximo de arquivo";
+$tr["Add option to send e-mail to the uploader or to another e-mail address"] = "Adiciona opção de enviar e-mail para o usuário que realiza o envio e para outro endereço de e-mail";
+$tr["Your e-mail address isn't valid!"] = "Votre adresse de courriel est invalide!";
+$tr["Destination e-mail address isn't valid!"] = "Endereço de e-mail destino não é válido!";
+$tr["Information about your uploaded file: %1"] = "Informação relativa ao seu arquivo enviado: %1";
+$tr["An upload was delivered to you"] = "Um arquivo foi enviado para você";
+$tr["E-mail was sent!"] = "E-mail enviado!";
+$tr["E-mail was sent to: %1!"] = "E-mail enviado para: %1!";
+$tr["Option to add password protection for file download"] = "Opção para adicionar senha para o download de arquivo";
+$tr["Wrong password!"] = "Senha incorreta!";
+$tr["Maximum number of days an upload will be kept on the server."] = "Número máximo de dias que um arquivo será mantido no servidor.";
+$tr["N. Of Days"] = "N. de dias";
+$tr["Files will be kept on our server for %1 days"] = "Arquivos serão mantidos no nossos servidores por %1 dias";
+$tr["Never"] = "Jamais";
+?>
Modified: branches/v0.4/sql/mysql/2_base.sql
===================================================================
--- branches/v0.4/sql/mysql/2_base.sql 2009-07-03 17:31:29 UTC (rev 329)
+++ branches/v0.4/sql/mysql/2_base.sql 2009-08-21 17:52:47 UTC (rev 330)
@@ -36,6 +36,7 @@
INSERT INTO `langs` (`id`, `name`, `locale`, `browser`, `charset`, `active`) VALUES('it', 'Italiano', 'it_IT.utf8', '[it];[it-IT]', 'utf-8', 1);
INSERT INTO `langs` (`id`, `name`, `locale`, `browser`, `charset`, `active`) VALUES('fr', 'Français', 'fr_FR.utf8', '[fr];[fr-FR]', 'utf-8', 1);
INSERT INTO `langs` (`id`, `name`, `locale`, `browser`, `charset`, `active`) VALUES('de', 'Deutsch', 'de_DE.utf8', '[de];[de-DE]', 'utf-8', 1);
+INSERT INTO `langs` (`id`, `name`, `locale`, `browser`, `charset`, `active`) VALUES('pt_BR', 'Português', 'pt_BR.utf8', '[pt];[pt-BR]', 'utf-8', 1);
INSERT INTO `langs` (`id`, `name`, `locale`, `browser`, `charset`, `active`) VALUES('zh_CN', '中文', 'zh_CN.utf8', '[zh];[zh-CN]', 'utf-8', 1);
--
Modified: branches/v0.4/sql/pgsql/2_base.sql
===================================================================
--- branches/v0.4/sql/pgsql/2_base.sql 2009-07-03 17:31:29 UTC (rev 329)
+++ branches/v0.4/sql/pgsql/2_base.sql 2009-08-21 17:52:47 UTC (rev 330)
@@ -86,6 +86,7 @@
INSERT INTO langs VALUES ('it', 'Italiano', 'it_IT.utf8', '[it];[it-IT]', 'utf-8', 1);
INSERT INTO langs VALUES ('fr', 'Français', 'fr_FR.utf8', '[fr];[fr-FR]', 'utf-8', 1);
INSERT INTO langs VALUES ('de', 'Deutsch', 'de_DE.utf8', '[de];[de-DE]', 'utf-8', 1);
+INSERT INTO langs VALUES ('pt_BR', 'Português', 'pt_BR.utf8', '[pt];[pt-BR]', 'utf-8', 1);
INSERT INTO langs VALUES ('zh_CN', '中文', 'zh_CN.utf8', '[zh];[zh-CN]', 'utf-8', 1);
Modified: branches/v0.4/sql/txt/langs.txt
===================================================================
--- branches/v0.4/sql/txt/langs.txt 2009-07-03 17:31:29 UTC (rev 329)
+++ branches/v0.4/sql/txt/langs.txt 2009-08-21 17:52:47 UTC (rev 330)
@@ -3,4 +3,5 @@
it|Italiano|it_IT.utf8|[it];[it-IT]|utf-8|1
fr|Français|fr_FR.utf8|[fr];[fr-FR]|utf-8|1
de|Deutsch|de_DE.utf8|[de];[de-DE]|utf-8|1
+pt_BR|Português|pt_BR.utf8|[pt];[pt-BR]|utf-8|1
zh_CN|中文|zh_CN.utf8|[zh];[zh-CN]|utf-8|1
Added: branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
===================================================================
(Binary files differ)
Property changes on: branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.mo
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.po
===================================================================
--- branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.po (rev 0)
+++ branches/v0.4/templates/default/locale/pt_BR/LC_MESSAGES/template.po 2009-08-21 17:52:47 UTC (rev 330)
@@ -0,0 +1,621 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenUpload\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Alessandro Briosi <ts...@br...>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+
+msgid "Your IP has been blocked!"
+msgstr "Seu endereço IP foi bloqueado!"
+
+msgid "You cannot use this site."
+msgstr "Você não pode utilizar este site."
+
+msgid "If you think this is a misconfiguration please send an email to the site owner"
+msgstr "Se isso parecer um engano, por favor envie um email para o administrador"
+
+msgid "Captcha code"
+msgstr "Código Captcha"
+
+msgid "Reload Image"
+msgstr "Recarregar a imagem"
+
+msgid "Please enter the following captcha to proceed for the removal"
+msgstr "Por favor, digite o captcha para prosseguir com a remoção"
+
+msgid "Protection"
+msgstr "Proteção"
+
+msgid "Captcha"
+msgstr "Proteger com código Captcha"
+
+msgid "Please enter the following captcha to proceed for the download"
+msgstr "Por favor, digite o captcha para prosseguir com o download"
+
+msgid "Use Captcha"
+msgstr "Usar Captcha"
+
+msgid "Compress the files"
+msgstr "Comprimir os arquivos"
+
+msgid "No compression"
+msgstr "Sem compressão"
+
+msgid "Password"
+msgstr "Senha"
+
+msgid "The download is password protected."
+msgstr "O download é protegido por senha."
+
+msgid "Password protect"
+msgstr "Protegido por senha"
+
+msgid "Send password in e-mail"
+msgstr "Enviar a senha por e-mail"
+
+msgid "You are receiving this message because someone uploaded a file on our OpenUpload server for you."
+msgstr "Você recebeu este e-mail pois um novo arquivo foi disponibilizado para você nos nossos servidores."
+
+msgid "Description"
+msgstr "Descrição"
+
+msgid "User message"
+msgstr "Mensagem para o usuário"
+
+msgid "To download the file open the following link in a browser"
+msgstr "Para fazer o download, abra o seguinte link no seu navegador"
+
+msgid "To remove the file from our server open the following link in a browser"
+msgstr "Para remover o arquivo do servidor, abra o seguinte link no seu navegador"
+
+msgid "For complains please send an email to"
+msgstr "Em caso de abuso, por favor envie e-mail para "
+
+msgid "Send me an e-mail"
+msgstr "Me envie um e-mail"
+
+msgid "Send"
+msgstr "Enviar"
+
+msgid "Send e-mail to"
+msgstr "Enviar e-mail para"
+
+msgid "Send remove link"
+msgstr "Enviar link de remoção"
+
+msgid "e-mail Subject"
+msgstr "Assunto do e-mail"
+
+msgid "e-mail Message"
+msgstr "Mensagem do e-mail"
+
+msgid "Your e-mail address"
+msgstr "Seu endereço de e-mail"
+
+msgid "Expires on"
+msgstr "Expira em"
+
+msgid "Only the following mime types are allowed"
+msgstr "Apenas os seguintes tipos MIME são aceitos"
+
+msgid "Are you sure you want to delete the selected plugins?"
+msgstr "Tem certeza que deseja remover os plugins selecionados?"
+
+msgid "Are you sure you want to delete the selected plugin?"
+msgstr "Tem certeza que deseja remover o plugin selecionado?"
+
+msgid "S"
+msgstr "S"
+
+msgid "ID"
+msgstr "ID"
+
+msgid "Plugin"
+msgstr "Plugin"
+
+msgid "Group"
+msgstr "Grupo"
+
+msgid "Access"
+msgstr "Acesso"
+
+msgid "Actions"
+msgstr "Ações"
+
+msgid "Add"
+msgstr "Adicionar"
+
+msgid "IP"
+msgstr "Endereço IP"
+
+msgid "Priority"
+msgstr "Prioridade"
+
+msgid "Confirm"
+msgstr "Confirmar"
+
+msgid "Name"
+msgstr "Nome completo"
+
+msgid "Gruppo"
+msgstr "Grupo"
+
+msgid "Rights set?"
+msgstr "Privilégios configurados?"
+
+msgid "Any"
+msgstr "Todos"
+
+msgid "Yes"
+msgstr "Sim"
+
+msgid "No"
+msgstr "Não"
+
+msgid "Plugins ACL"
+msgstr "Plugins ACL"
+
+msgid "Plugins Options"
+msgstr "Opções dos plugins"
+
+msgid "Settings"
+msgstr "Configurações"
+
+msgid "Options"
+msgstr "Opções"
+
+msgid "Login name"
+msgstr "Login"
+
+msgid "Retype Password"
+msgstr "Redigite a senha"
+
+msgid "Full Name"
+msgstr "Nome completo"
+
+msgid "e-mail"
+msgstr "E-mail"
+
+msgid "Preferred language"
+msgstr "Idioma de preferência"
+
+msgid "Active"
+msgstr "Ativo"
+
+msgid "Are you sure you want to delete the selected banned ips?"
+msgstr "Tem certeza que deseja remover os IPs banidos selecionados?"
+
+msgid "Are you sure you want to delete the selected banned ip?"
+msgstr "Tem certeza que deseja remover o IP banido selecionado?"
+
+msgid "Are you sure you want to delete the selected languages?"
+msgstr "Tem certeza que deseja remover os idiomas selecionados?"
+
+msgid "Are you sure you want to delete the selected language?"
+msgstr "Tem certeza que deseja remover o idioma selecionado?"
+
+msgid "Locale"
+msgstr "Local"
+
+msgid "Browser recon"
+msgstr "Browser recon"
+
+msgid "Charset"
+msgstr "Charset"
+
+msgid "Plugin does not have any option to be configured"
+msgstr "Plugin não tem opções de configuração"
+
+msgid "Translation module"
+msgstr "Módulo de tradução"
+
+msgid "Select one"
+msgstr "Selecione um"
+
+msgid "Default language"
+msgstr "Idioma default"
+
+msgid "Authentication module"
+msgstr "Módulo de autenticação"
+
+msgid "(LDAP Configuration needs to be done<br /> by hand for now)"
+msgstr "(Por enquanto, a configuração LDAP deve ser feita manualmente)"
+
+msgid "Site title"
+msgstr "Título do site"
+
+msgid "WebMaster E-mail"
+msgstr "E-mail do webmaster (administrador do site)"
+
+msgid "Site E-mail"
+msgstr "E-mail do site"
+
+msgid "Confirm registration with e-mail"
+msgstr "Confirmar registro através de e-mail"
+
+msgid "Template"
+msgstr "Template"
+
+msgid "Template Footer"
+msgstr "Rodapé do Template"
+
+msgid "Maximum upload size (in MB)"
+msgstr "Tamanho máximo de upload (em MB)"
+
+msgid "Maximum download time (in Min)"
+msgstr "Tempo máximo de download (em minutos)"
+
+msgid "0 disables it"
+msgstr "0 torna desativado"
+
+msgid "Max num. of file uploaded per upload"
+msgstr "Número máximo de arquivos enviados por upload"
+
+msgid "Use shorter links?"
+msgstr "Utilizar links curtos?"
+
+msgid "Length of IDs (suggested min 6)"
+msgstr "Tamanho dos identificadores (mínimo sugerido de 6)"
+
+msgid "Use alphanumerical IDs?"
+msgstr "Utilizar identificadores alfanuméricos?"
+
+msgid "Allow unprotected file removal?"
+msgstr "Permitir remoção desprotegida de arquivos?"
+
+msgid "Upload tracking method"
+msgstr "Método de acompanhamento de upload"
+
+msgid "Enable activity logging?"
+msgstr "Habilitar registro de atividades?"
+
+msgid "Database logging level"
+msgstr "Nível de log no banco de dados"
+
+msgid "Syslog logging level"
+msgstr "Nível de log no Syslog"
+
+msgid "Save Changes"
+msgstr "Salvar modificações"
+
+msgid "Download config file"
+msgstr "Download do arquivo de configuração"
+
+msgid "This are the configured settings for a review"
+msgstr "Estas são as configurações atuais"
+
+msgid "Filter"
+msgstr "Filtros"
+
+msgid "All"
+msgstr "Todos"
+
+msgid "Errors"
+msgstr "Erros"
+
+msgid "Security"
+msgstr "Segurança"
+
+msgid "Warnings"
+msgstr "Alertas"
+
+msgid "Notice"
+msgstr "Notificação"
+
+msgid "Info"
+msgstr "Informação"
+
+msgid "Date"
+msgstr "Data"
+
+msgid "Type"
+msgstr "Tipo"
+
+msgid "User"
+msgstr "Usuário"
+
+msgid "Module"
+msgstr "Módulo"
+
+msgid "Action"
+msgstr "Ação"
+
+msgid "Real Action"
+msgstr "Ação real"
+
+msgid "Result"
+msgstr "Resultado"
+
+msgid "Additional Info"
+msgstr "Informação adicional"
+
+msgid "Maintenence"
+msgstr "Manutenção"
+
+msgid "This options let you delete files based on some options."
+msgstr "Estas opções permitem a remoção de arquivos baseada em algumas opções."
+
+msgid "Please select one or more criteria for file deletion"
+msgstr "Por favor, selecione um ou mais critérios para remoção de arquivos"
+
+msgid "Delete files older than"
+msgstr "Remover arquivos mais antigos que"
+
+msgid "days"
+msgstr "dias"
+
+msgid "Which user name is"
+msgstr "Que o nome do usuário seja"
+
+msgid "Which upload day is"
+msgstr "Que o dia de upload seja"
+
+msgid "Which size is bigger than"
+msgstr "Que o tamanho seja maior que"
+
+msgid "Proceed"
+msgstr "Continuar"
+
+msgid "Expiration plugin"
+msgstr "Plugin de expiração"
+
+msgid "To delete files marked as expired by the expire plugin press the \"Delete expired\" button."
+msgstr "Para apagar os arquivos expirados pelo plugin de expiração, clique no botão \"Apagar Expirados\"."
+
+msgid "Delete expired"
+msgstr "Apagar Expirados"
+
+msgid "Are you sure you want to delete the selected users?"
+msgstr "Tem certeza que deseja apagar os usuários selecionados?"
+
+msgid "Are you sure you want to delete the selected user?"
+msgstr "Tem certeza que deseja apagar o usuário selecionado?"
+
+msgid "Login"
+msgstr "Entrar"
+
+msgid "E-mail"
+msgstr "E-mail"
+
+msgid "Plugins"
+msgstr "Plugins"
+
+msgid "Files"
+msgstr "Arquivos"
+
+msgid "Users"
+msgstr "Usuários"
+
+msgid "Groups"
+msgstr "Grupos"
+
+msgid "Rights"
+msgstr "Permissões"
+
+msgid "Languages"
+msgstr "Idiomas"
+
+msgid "Banned"
+msgstr "Banidos"
+
+msgid "Logs"
+msgstr "Logs"
+
+msgid "Deletion Result"
+msgstr "Resultado da remoção"
+
+msgid "The following files have been deleted."
+msgstr "Os seguintes arquivos foram removidos."
+
+msgid "The following files will be deleted, proceed?"
+msgstr "Os seguintes arquivos serão removidos, continuar?"
+
+msgid "Yes, delete all"
+msgstr "Sim, remover todos"
+
+msgid "No files matched the criteria"
+msgstr "Nenhum arquivo atente ao critério"
+
+msgid "Back to Maintenance"
+msgstr "Retornar para Manutenção"
+
+msgid "Are you sure you want to delete the selected groups?"
+msgstr "Tem certeza que deseja remover os grupos selecionados?"
+
+msgid "Are you sure you want to delete the selected group?"
+msgstr "Tem certeza que deseja remover o grupo selecionado?"
+
+msgid "Group Name"
+msgstr "Nome do Grupo"
+
+msgid "Here you can administer"
+msgstr "Utilitários administrativos"
+
+msgid "Banned IPs"
+msgstr "IP's banidos"
+
+msgid "Logs / Statistics"
+msgstr "Logs / Estatísticas"
+
+msgid "PLEASE BE CAREFULL WHEN MODIFING THE RIGHTS!"
+msgstr "CUIDADO AO ALTERAR OS PRIVILÉGIOS!"
+
+msgid "Editing rights for group"
+msgstr "Edição de privilégios para grupo"
+
+msgid "Right"
+msgstr "Privilégio"
+
+msgid "Resulting ACL"
+msgstr "ACL Resultado"
+
+msgid "From ACL"
+msgstr "ACL Original"
+
+msgid "default"
+msgstr "Defaut"
+
+msgid "<< Back"
+msgstr "<< Retornar"
+
+msgid "Apply changes"
+msgstr "Aplicar mudanças"
+
+msgid "Files List"
+msgstr "Lista de arquivos"
+
+msgid "Maintenance"
+msgstr "Manutenção"
+
+msgid "Are you sure you want to delete the selected files?"
+msgstr "Tem certeza que deseja remover os arquivos selecionados?"
+
+msgid "Are you sure you want to delete the selected file?"
+msgstr "Tem certeza que deseja remover o arquivo selecionado?"
+
+msgid "Id"
+msgstr "Id"
+
+msgid "Upload Date"
+msgstr "Data do envio"
+
+msgid "The file you requested the removal needs some input before you can proceed"
+msgstr "A operação de remoção requer alguns dados para prosseguir"
+
+msgid "Download link"
+msgstr "Link para Download"
+
+msgid "Remove link"
+msgstr "Link para Remoção"
+
+msgid "Upload a new file"
+msgstr "Enviar novo arquivo"
+
+msgid "Uploading"
+msgstr "Enviando"
+
+msgid "please wait ..."
+msgstr "Aguarde ..."
+
+msgid "Please enter the File Information requested"
+msgstr "Por favor digite a informação necesária"
+
+msgid "File code"
+msgstr "Código do arquivo"
+
+msgid "File description"
+msgstr "Descrição do arquivo"
+
+msgid "File name"
+msgstr "Nome do arquivo"
+
+msgid "File size"
+msgstr "Tamanho do arquivo"
+
+msgid "Select the file to be uploaded"
+msgstr "Selecione o arquivo a ser enviado"
+
+msgid "Maximum allowed upload size"
+msgstr "Tamanho máximo permitido para envio"
+
+msgid "Upload"
+msgstr "Enviar"
+
+msgid "The file you requested the download needs some input before you can proceed"
+msgstr "A operação de download requer alguns dados para prosseguir"
+
+msgid "You can now proceed downloading the file"
+msgstr "Você pode agora fazer download do arquivo"
+
+msgid "Uploaded on"
+msgstr "Enviado em "
+
+msgid "Download file"
+msgstr "Download do arquivo"
+
+msgid "Complete upload"
+msgstr "Concluir envio"
+
+msgid "FILE HAS BEEN SUCCESSFULLY REMOVED"
+msgstr "ARQUIVO REMOVIDO COM SUCESSO"
+
+msgid "You requested to remove the following file"
+msgstr "Você selecionou a remoção do seguinte arquivo"
+
+msgid "Confirm removal"
+msgstr "Confirmar remoção"
+
+msgid "Dear "
+msgstr "Prezado"
+
+msgid "This e-mail message is sent to you to confirm your account registration has a valid e-mail address."
+msgstr "Esta mensagem foi enviada a você para que confirme que o registro foi feito com um endereço válido de e-mail."
+
+msgid "Open the following link in a browser to confirm your account."
+msgstr "Abra o link abaixo em um navegador para ativar sua conta."
+
+msgid "Best regards"
+msgstr "Atenciosamente"
+
+msgid "User login"
+msgstr "Login usuário"
+
+msgid "User name"
+msgstr "Nome usuário"
+
+msgid "You don't have an account?"
+msgstr "Não tem uma conta?"
+
+msgid "Register here"
+msgstr "Registre-se aqui"
+
+msgid "or you can"
+msgstr "ou então, você pode"
+
+msgid "Login here"
+msgstr "Entrar aqui"
+
+msgid "Language"
+msgstr "Idioma"
+
+msgid "Change"
+msgstr "Mudar"
+
+msgid "Registration succeeded"
+msgstr "Registro concluído com sucesso"
+
+msgid "An e-mail has been sent for the account activation"
+msgstr "Um e-mail foi enviado para concluir a ativação da conta"
+
+msgid "Please follow the e-mail instructions to activate your account."
+msgstr "Por favor, siga as instruções do e-mail para ativar sua conta."
+
+msgid "back to home"
+msgstr "Voltar ao início"
+
+msgid "Old password"
+msgstr "Senha atual"
+
+msgid "New password"
+msgstr "Nova senha"
+
+msgid "Retype password"
+msgstr "Redigite a senha"
+
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgid "Your account registration has been confirmed."
+msgstr "Sua inscrição está confirmada."
+
+msgid "You can now proceed with the login"
+msgstr "Você agora pode seguir para o login"
+
+msgid "here"
+msgstr "aqui"
+
Added: branches/v0.4/templates/default/locale/pt_BR.inc.php
===================================================================
--- branches/v0.4/templates/default/locale/pt_BR.inc.php (rev 0)
+++ branches/v0.4/templates/default/locale/pt_BR.inc.php 2009-08-21 17:52:47 UTC (rev 330)
@@ -0,0 +1,206 @@
+<?php
+// Brazilian Portuguese - By Leonardo F. Cardoso - leo...@gm...
+$tr["Your IP has been blocked!"] = "Seu endereço IP foi bloqueado!";
+$tr["You cannot use this site."] = "Você não pode utilizar este site.";
+$tr["If you think this is a misconfiguration please send an email to the site owner"] = "Se isso parecer um engano, por favor envie um email para o administrador";
+$tr["Captcha code"] = "Código Captcha";
+$tr["Reload Image"] = "Recarregar a imagem";
+$tr["Please enter the following captcha to proceed for the removal"] = "Por favor, digite o captcha para prosseguir com a remoção";
+$tr["Protection"] = "Proteção";
+$tr["Captcha"] = "Proteger com código Captcha";
+$tr["Please enter the following captcha to proceed for the download"] = "Por favor, digite o captcha para prosseguir com o download";
+$tr["Use Captcha"] = "Usar Captcha";
+$tr["Compress the files"] = "Comprimir os arquivos";
+$tr["No compression"] = "Sem compressão";
+$tr["Password"] = "Senha";
+$tr["The download is password protected."] = "O download é protegido por senha.";
+$tr["Password protect"] = "Protegido por senha";
+$tr["Send password in e-mail"] = "Enviar a senha por e-mail";
+$tr["You are receiving this message because someone uploaded a file on our OpenUpload server for you."] = "Você recebeu este e-mail pois um novo arquivo foi disponibilizado para você nos nossos servidores.";
+$tr["Description"] = "Descrição";
+$tr["User message"] = "Mensagem para o usuário";
+$tr["To download the file open the following link in a browser"] = "Para fazer o download, abra o seguinte link no seu navegador";
+$tr["To remove the file from our server open the following link in a browser"] = "Para remover o arquivo do servidor, abra o seguinte link no seu navegador";
+$tr["For complains please send an email to"] = "Em caso de abuso, por favor envie e-mail para ";
+$tr["Send me an e-mail"] = "Me envie um e-mail";
+$tr["Send"] = "Enviar";
+$tr["Send e-mail to"] = "Enviar e-mail para";
+$tr["Send remove link"] = "Enviar link de remoção";
+$tr["e-mail Subject"] = "Assunto do e-mail";
+$tr["e-mail Message"] = "Mensagem do e-mail";
+$tr["Your e-mail address"] = "Seu endereço de e-mail";
+$tr["Expires on"] = "Expira em";
+$tr["Only the following mime types are allowed"] = "Apenas os seguintes tipos MIME são aceitos";
+$tr["Are you sure you want to delete the selected plugins?"] = "Tem certeza que deseja remover os plugins selecionados?";
+$tr["Are you sure you want to delete the selected plugin?"] = "Tem certeza que deseja remover o plugin selecionado?";
+$tr["S"] = "S";
+$tr["ID"] = "ID";
+$tr["Plugin"] = "Plugin";
+$tr["Group"] = "Grupo";
+$tr["Access"] = "Acesso";
+$tr["Actions"] = "Ações";
+$tr["Add"] = "Adicionar";
+$tr["IP"] = "Endereço IP";
+$tr["Priority"] = "Prioridade";
+$tr["Confirm"] = "Confirmar";
+$tr["Name"] = "Nome completo";
+$tr["Gruppo"] = "Grupo";
+$tr["Rights set?"] = "Privilégios configurados?";
+$tr["Any"] = "Todos";
+$tr["Yes"] = "Sim";
+$tr["No"] = "Não";
+$tr["Plugins ACL"] = "Plugins ACL";
+$tr["Plugins Options"] = "Opções dos plugins";
+$tr["Settings"] = "Configurações";
+$tr["Options"] = "Opções";
+$tr["Login name"] = "Login";
+$tr["Retype Password"] = "Redigite a senha";
+$tr["Full Name"] = "Nome completo";
+$tr["e-mail"] = "E-mail";
+$tr["Preferred language"] = "Idioma de preferência";
+$tr["Active"] = "Ativo";
+$tr["Are you sure you want to delete the selected banned ips?"] = "Tem certeza que deseja remover os IPs banidos selecionados?";
+$tr["Are you sure you want to delete the selected banned ip?"] = "Tem certeza que deseja remover o IP banido selecionado?";
+$tr["Are you sure you want to delete the selected languages?"] = "Tem certeza que deseja remover os idiomas selecionados?";
+$tr["Are you sure you want to delete the selected language?"] = "Tem certeza que deseja remover o idioma selecionado?";
+$tr["Locale"] = "Local";
+$tr["Browser recon"] = "Browser recon";
+$tr["Charset"] = "Charset";
+$tr["Plugin does not have any option to be configured"] = "Plugin não tem opções de configuração";
+$tr["Translation module"] = "Módulo de tradução";
+$tr["Select one"] = "Selecione um";
+$tr["Default language"] = "Idioma default";
+$tr["Authentication module"] = "Módulo de autenticação";
+$tr["(LDAP Configuration needs to be done<br /> by hand for now)"] = "(Por enquanto, a configuração LDAP deve ser feita manualmente)";
+$tr["Site title"] = "Título do site";
+$tr["WebMaster E-mail"] = "E-mail do webmaster (administrador do site)";
+$tr["Site E-mail"] = "E-mail do site";
+$tr["Confirm registration with e-mail"] = "Confirmar registro através de e-mail";
+$tr["Template"] = "Template";
+$tr["Template Footer"] = "Rodapé do Template";
+$tr["Maximum upload size (in MB)"] = "Tamanho máximo de upload (em MB)";
+$tr["Maximum download time (in Min)"] = "Tempo máximo de download (em minutos)";
+$tr["0 disables it"] = "0 torna desativado";
+$tr["Max num. of file uploaded per upload"] = "Número máximo de arquivos enviados por upload";
+$tr["Use shorter links?"] = "Utilizar links curtos?";
+$tr["Length of IDs (suggested min 6)"] = "Tamanho dos identificadores (mínimo sugerido de 6)";
+$tr["Use alphanumerical IDs?"] = "Utilizar identificadores alfanuméricos?";
+$tr["Allow unprotected file removal?"] = "Permitir remoção desprotegida de arquivos?";
+$tr["Upload tracking method"] = "Método de acompanhamento de upload";
+$tr["Enable activity logging?"] = "Habilitar registro de atividades?";
+$tr["Database logging level"] = "Nível de log no banco de dados";
+$tr["Syslog logging level"] = "Nível de log no Syslog";
+$tr["Save Changes"] = "Salvar modificações";
+$tr["Download config file"] = "Download do arquivo de configuração";
+$tr["This are the configured settings for a review"] = "Estas são as configurações atuais";
+$tr["Filter"] = "Filtros";
+$tr["All"] = "Todos";
+$tr["Errors"] = "Erros";
+$tr["Security"] = "Segurança";
+$tr["Warnings"] = "Alertas";
+$tr["Notice"] = "Notificação";
+$tr["Info"] = "Informação";
+$tr["Date"] = "Data";
+$tr["Type"] = "Tipo";
+$tr["User"] = "Usuário";
+$tr["Module"] = "Módulo";
+$tr["Action"] = "Ação";
+$tr["Real Action"] = "Ação real";
+$tr["Result"] = "Resultado";
+$tr["Additional Info"] = "Informação adicional";
+$tr["Maintenence"] = "Manutenção";
+$tr["This options let you delete files based on some options."] = "Estas opções permitem a remoção de arquivos baseada em algumas opções.";
+$tr["Please select one or more criteria for file deletion"] = "Por favor, selecione um ou mais critérios para remoção de arquivos";
+$tr["Delete files older than"] = "Remover arquivos mais antigos que";
+$tr["days"] = "dias";
+$tr["Which user name is"] = "Que o nome do usuário seja";
+$tr["Which upload day is"] = "Que o dia de upload seja";
+$tr["Which size is bigger than"] = "Que o tamanho seja maior que";
+$tr["Proceed"] = "Continuar";
+$tr["Expiration plugin"] = "Plugin de expiração";
+$tr["To delete files marked as expired by the expire plugin press the \"Delete expired\" button."] = "Para apagar os arquivos expirados pelo plugin de expiração, clique no botão \"Apagar Expirados\".";
+$tr["Delete expired"] = "Apagar Expirados";
+$tr["Are you sure you want to delete the selected users?"] = "Tem certeza que deseja apagar os usuários selecionados?";
+$tr["Are you sure you want to delete the selected user?"] = "Tem certeza que deseja apagar o usuário selecionado?";
+$tr["Login"] = "Entrar";
+$tr["E-mail"] = "E-mail";
+$tr["Plugins"] = "Plugins";
+$tr["Files"] = "Arquivos";
+$tr["Users"] = "Usuários";
+$tr["Groups"] = "Grupos";
+$tr["Rights"] = "Permissões";
+$tr["Languages"] = "Idiomas";
+$tr["Banned"] = "Banidos";
+$tr["Logs"] = "Logs";
+$tr["Deletion Result"] = "Resultado da remoção";
+$tr["The following files have been deleted."] = "Os seguintes arquivos foram removidos.";
+$tr["The following files will be deleted, proceed?"] = "Os seguintes arquivos serão removidos, continuar?";
+$tr["Yes, delete all"] = "Sim, remover todos";
+$tr["No files matched the criteria"] = "Nenhum arquivo atente ao critério";
+$tr["Back to Maintenance"] = "Retornar para Manutenção";
+$tr["Are you sure you want to delete the selected groups?"] = "Tem certeza que deseja remover os grupos selecionados?";
+$tr["Are you sure you want to delete the selected group?"] = "Tem certeza que deseja remover o grupo selecionado?";
+$tr["Group Name"] = "Nome do Grupo";
+$tr["Here you can administer"] = "Utilitários administrativos";
+$tr["Banned IPs"] = "IP's banidos";
+$tr["Logs / Statistics"] = "Logs / Estatísticas";
+$tr["PLEASE BE CAREFULL WHEN MODIFING THE RIGHTS!"] = "CUIDADO AO ALTERAR OS PRIVILÉGIOS!";
+$tr["Editing rights for group"] = "Edição de privilégios para grupo";
+$tr["Right"] = "Privilégio";
+$tr["Resulting ACL"] = "ACL Resultado";
+$tr["From ACL"] = "ACL Original";
+$tr["default"] = "Defaut";
+$tr["<< Back"] = "<< Retornar";
+$tr["Apply changes"] = "Aplicar mudanças";
+$tr["Files List"] = "Lista de arquivos";
+$tr["Maintenance"] = "Manutenção";
+$tr["Are you sure you want to delete the selected files?"] = "Tem certeza que deseja remover os arquivos selecionados?";
+$tr["Are you sure you want to delete the selected file?"] = "Tem certeza que deseja remover o arquivo selecionado?";
+$tr["Id"] = "Id";
+$tr["Upload Date"] = "Data do envio";
+$tr["The file you requested the removal needs some input before you can proceed"] = "A operação de remoção requer alguns dados para prosseguir";
+$tr["Download link"] = "Link para Download";
+$tr["Remove link"] = "Link para Remoção";
+$tr["Upload a new file"] = "Enviar novo arquivo";
+$tr["Uploading"] = "Enviando";
+$tr["please wait ..."] = "Aguarde ...";
+$tr["Please enter the File Information requested"] = "Por favor digite a informação necesária";
+$tr["File code"] = "Código do arquivo";
+$tr["File description"] = "Descrição do arquivo";
+$tr["File name"] = "Nome do arquivo";
+$tr["File size"] = "Tamanho do arquivo";
+$tr["Select the file to be uploaded"] = "Selecione o arquivo a ser enviado";
+$tr["Maximum allowed upload size"] = "Tamanho máximo permitido para envio";
+$tr["Upload"] = "Enviar";
+$tr["The file you requested the download needs some input before you can proceed"] = "A operação de download requer alguns dados para prosseguir";
+$tr["You can now proceed downloading the file"] = "Você pode agora fazer download do arquivo";
+$tr["Uploaded on"] = "Enviado em ";
+$tr["Download file"] = "Download do arquivo";
+$tr["Complete upload"] = "Concluir envio";
+$tr["FILE HAS BEEN SUCCESSFULLY REMOVED"] = "ARQUIVO REMOVIDO COM SUCESSO";
+$tr["You requested to remove the following file"] = "Você selecionou a remoção do seguinte arquivo";
+$tr["Confirm removal"] = "Confirmar remoção";
+$tr["Dear "] = "Prezado";
+$tr["This e-mail message is sent to you to confirm your account registration has a valid e-mail address."] = "Esta mensagem foi enviada a você para que confirme que o registro foi feito com um endereço válido de e-mail.";
+$tr["Open the following link in a browser to confirm your account."] = "Abra o link abaixo em um navegador para ativar sua conta.";
+$tr["Best regards"] = "Atenciosamente";
+$tr["User login"] = "Login usuário";
+$tr["User name"] = "Nome usuário";
+$tr["You don't have an account?"] = "Não tem uma conta?";
+$tr["Register here"] = "Registre-se aqui";
+$tr["or you can"] = "ou então, você pode";
+$tr["Login here"] = "Entrar aqui";
+$tr["Language"] = "Idioma";
+$tr["Change"] = "Mudar";
+$tr["Registration succeeded"] = "Registro concluído com sucesso";
+$tr["An e-mail has been sent for the account activation"] = "Um e-mail foi enviado para concluir a ativação da conta";
+$tr["Please follow the e-mail instructions to activate your account."] = "Por favor, siga as instruções do e-mail para ativar sua conta.";
+$tr["back to home"] = "Voltar ao início";
+$tr["Old password"] = "Senha atual";
+$tr["New password"] = "Nova senha";
+$tr["Retype password"] = "Redigite a senha";
+$tr["Cancel"] = "Cancelar";
+$tr["Your account registration has been confirmed."] = "Sua inscrição está confirmada.";
+$tr["You can now proceed with the login"] = "Você agora pode seguir para o login";
+$tr["here"] = "aqui";
+?>
Modified: branches/v0.4/www/setup.inc.php
===================================================================
--- branches/v0.4/www/setup.inc.php 2009-07-03 17:31:29 UTC (rev 329)
+++ branches/v0.4/www/setup.inc.php 2009-08-21 17:52:47 UTC (rev 330)
@@ -263,6 +263,7 @@
array ('id' => 'it', 'name' => 'Italiano', 'locale' => 'it_IT.utf8', 'browser' => '[it];[it-IT]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'fr', 'name' => 'Français', 'locale' => 'fr_FR.utf8', 'browser' => '[fr];[fr-FR]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'de', 'name' => 'Deutsch', 'locale' => 'de_DE.utf8', 'browser' => '[de];[de-DE]', 'charset' => 'utf-8', 'active' => 1),
+ array ('id' => 'pt', 'name' => 'Português', 'locale' => 'pt_BR.utf8', 'browser' => '[pt];[pt-BR]', 'charset' => 'utf-8', 'active' => 1),
array ('id' => 'zh_CN', 'name' => '中文', 'locale' => 'zh_CN.utf8', 'browser' => '[zh];[zh-CN]', 'charset' => 'utf-8', 'active' => 1),
),
'users' => array (
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-07-03 17:31:36
|
Revision: 329
http://openupload.svn.sourceforge.net/openupload/?rev=329&view=rev
Author: tsdogs
Date: 2009-07-03 17:31:29 +0000 (Fri, 03 Jul 2009)
Log Message:
-----------
paleative fix for mysql not accepting "" as value for a date. (must test on other dbs)
Modified Paths:
--------------
branches/v0.4/www/setup.inc.php
Modified: branches/v0.4/www/setup.inc.php
===================================================================
--- branches/v0.4/www/setup.inc.php 2009-06-16 17:02:03 UTC (rev 328)
+++ branches/v0.4/www/setup.inc.php 2009-07-03 17:31:29 UTC (rev 329)
@@ -267,7 +267,7 @@
),
'users' => array (
array ( 'id' => 1, 'login' => '%1', 'password' => '%2', 'name' => 'Administrator', 'group_name' => '%3', 'email' => '%6',
- 'lang' => 'en', 'reg_date' => '', 'regid' => '', 'active' => 1 ),
+ 'lang' => 'en', 'reg_date' => '2009-01-01', 'regid' => '', 'active' => 1 ),
),
'plugin_acl' => array (
array ( 'id' => '1', 'group_name' => '%3', 'plugin' => 'password', 'access' => 'enable'),
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-16 17:02:36
|
Revision: 328
http://openupload.svn.sourceforge.net/openupload/?rev=328&view=rev
Author: tsdogs
Date: 2009-06-16 17:02:03 +0000 (Tue, 16 Jun 2009)
Log Message:
-----------
ignore local files
Property Changed:
----------------
trunk/data/files/
trunk/data/txtdb/
Property changes on: trunk/data/files
___________________________________________________________________
Added: svn:ignore
+ *
Property changes on: trunk/data/txtdb
___________________________________________________________________
Added: svn:ignore
+ *
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-16 16:45:00
|
Revision: 327
http://openupload.svn.sourceforge.net/openupload/?rev=327&view=rev
Author: tsdogs
Date: 2009-06-16 16:44:57 +0000 (Tue, 16 Jun 2009)
Log Message:
-----------
new data structure
Modified Paths:
--------------
trunk/lib/modules/default/files.inc.php
trunk/templates/default/modules/admin/pluginoptionadd.tpl
trunk/templates/default/modules/files/uploadForm.tpl
Added Paths:
-----------
trunk/data/templates_c/
Removed Paths:
-------------
trunk/templates_c/
Property changes on: trunk/data/templates_c
___________________________________________________________________
Added: svn:ignore
+ %%*
Added: svn:mergeinfo
+
Modified: trunk/lib/modules/default/files.inc.php
===================================================================
--- trunk/lib/modules/default/files.inc.php 2009-06-16 16:43:16 UTC (rev 326)
+++ trunk/lib/modules/default/files.inc.php 2009-06-16 16:44:57 UTC (rev 327)
@@ -1,5 +1,10 @@
<?php
+
+function cgiupload_get_info($fid) {
+ return array();
+}
+
class FilesModule extends OpenUploadModule {
var $actions = array (
"u" => array (
@@ -68,6 +73,7 @@
unset($_SESSION['user']['u']);
$_SESSION['user']['identifier']=randomName(40,40);
+ $this->tpl->assign('uploadscript',$_SERVER['PHP_SELF']);
switch (app()->config['progress']) {
case 'uploadprogress':
$this->tpl->assign('identifiername','UPLOAD_IDENTIFIER');
@@ -75,6 +81,30 @@
case 'apc':
$this->tpl->assign('identifiername',ini_get('apc.rfc1867_name'));
break;
+ case 'cgi':
+ $_SESSION['user']['identifier']=randomName(32,32);
+ $this->tpl->assign('uploadscript',app()->config['progress_cgi'].'?upload_id='.session_id());
+ /* update information on the file */
+$_CGI['temp_dir'] = '/tmp/';
+$_CGI['upload_id'] = $_SESSION['user']['identifier'];
+$_CGI['upload_dir'] = '/tmp/';
+$_CGI['path_to_link_file'] = '/tmp/'.session_id().'.link';
+$_CGI['embedded_upload_results'] = 0;
+$_CGI['redirect_method'] = 1;
+$_CGI['redirect_url'] = app()->config['WWW_SERVER'].app()->config['WWW_ROOT'].'/';
+$_CGI['cgi_upload_hook'] = 0;
+$_CGI['debug_upload'] = 0;
+$_CGI['delete_link_file'] = 0;
+$_CGI['purge_temp_dirs'] = 1;
+$_CGI['purge_temp_dirs_limit'] = 1;
+$_CGI['max_upload_size'] = $_SESSION['user']['max_upload_size'];
+$c = '';
+foreach ($_CGI as $k => $value) {
+ $c .= $k.'<=>'.$value."\n";
+}
+ file_put_contents('/tmp/'.session_id().'.link',$c);
+ $this->tpl->assign('identifiername','UPLOAD_IDENTIFIER');
+ break;
default:
$this->tpl->assign('identifiername','UPLOAD_IDENTIFIER');
break;
@@ -99,9 +129,10 @@
$res = uploadprogress_get_info($_SESSION['user']['identifier']);
if (isset($res['bytes_uploaded'])) {
$progress['complete'] = $res['bytes_uploaded'];
- if ($res['bytes_total']>0)
+ if ($res['bytes_total']>0) {
$progress['total'] = $res['bytes_total'];
- $progress['percentage'] = floor(($res['bytes_uploaded'] / $res['bytes_total'])*100);
+ $progress['percentage'] = floor(($res['bytes_uploaded'] / $res['bytes_total'])*100);
+ }
$progress['files'] = $res['files_uploaded'];
}
break;
@@ -115,11 +146,23 @@
$progress['files'] = 0;
}
break;
+ case 'cgixyz':
+ $res = cgiupload_get_info($_SESSION['user']['identifier']);
+ if (isset($res['bytes_uploaded'])) {
+ $progress['complete'] = $res['bytes_uploaded'];
+ if ($res['bytes_total']>0) {
+ $progress['total'] = $res['bytes_total'];
+ $progress['percentage'] = floor(($res['bytes_uploaded'] / $res['bytes_total'])*100);
+ }
+ $progress['files'] = $res['files_uploaded'];
+ }
+ break;
}
app()->tpl->assign('progress',$progress);
app()->display('modules/files/uploadProgress');
exit;
}
+ echo 'user not allowed';
exit;
}
@@ -128,6 +171,12 @@
global $_FILES;
global $_SERVER;
+ switch (app()->config['progress']) {
+ case 'cgi':
+ /* populate the variables so that it will be available to the following code */
+
+ break;
+ }
if (isset($_FILES['upload'])) {
if ($_FILES['upload']['error']>0) {
switch ($_FILES['upload']['error']) { /* taken from here: http://it.php.net/manual/en/features.file-upload.errors.php */
@@ -182,7 +231,6 @@
} else if (!isset($_SESSION['user']['u'][0])) {
redirect();
}
- $result = app()->pluginAction('uploadOptions',$_SESSION['user']['u']);
if (!$result) { /* some plugin blocked the upload */
/* remove the files */
unset($_SESSION['user']['u']);
Modified: trunk/templates/default/modules/admin/pluginoptionadd.tpl
===================================================================
--- trunk/templates/default/modules/admin/pluginoptionadd.tpl 2009-06-16 16:43:16 UTC (rev 326)
+++ trunk/templates/default/modules/admin/pluginoptionadd.tpl 2009-06-16 16:44:57 UTC (rev 327)
@@ -24,4 +24,4 @@
{/foreach}
<tr><td colspan="2" align=right><input type="submit" class="submit" value="{tr}Confirm{/tr}"></td></tr>
</table>
-</form>
\ No newline at end of file
+</form>
Modified: trunk/templates/default/modules/files/uploadForm.tpl
===================================================================
--- trunk/templates/default/modules/files/uploadForm.tpl 2009-06-16 16:43:16 UTC (rev 326)
+++ trunk/templates/default/modules/files/uploadForm.tpl 2009-06-16 16:44:57 UTC (rev 327)
@@ -26,7 +26,7 @@
</script>
{/literal}<br />
<div id="upload">
-<form method="post" enctype='multipart/form-data' action="{$script}" name="uploadform">
+<form method="post" enctype='multipart/form-data' action="{$uploadscript}" name="uploadform">
<input type="hidden" name="action" value="{$action}">
<input type="hidden" name="step" value="{$nextstep}">
{if isset($user.max_upload_size)}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-16 16:43:19
|
Revision: 326
http://openupload.svn.sourceforge.net/openupload/?rev=326&view=rev
Author: tsdogs
Date: 2009-06-16 16:43:16 +0000 (Tue, 16 Jun 2009)
Log Message:
-----------
add possibility for multiple recipients of e-mail
Modified Paths:
--------------
trunk/plugins/email.inc.php
Modified: trunk/plugins/email.inc.php
===================================================================
--- trunk/plugins/email.inc.php 2009-06-16 16:39:05 UTC (rev 325)
+++ trunk/plugins/email.inc.php 2009-06-16 16:43:16 UTC (rev 326)
@@ -4,6 +4,10 @@
function emailPlugin() {
$this->description = tr('Add option to send e-mail to the uploader or to another e-mail address');
+ $this->options = array(
+ array('name' => 'multirecipients', 'description' => tr('allow multiple recipients (1 = enable)'), 'type' => 'text'),
+ );
+
}
function uploadOptions(&$finfo,$acl) {
@@ -17,6 +21,7 @@
if ($acl!='enable') return true;
/* do e-mail checking and so */
/* $this->display('upload'); */
+ $group = $this->getGroup('maxrecipients');
$finfo[0]['emailme']=$_POST['emailme'];
$finfo[0]['emailfrom']=app()->config['site']['email'];
$finfo[0]['emailto']=$_POST['emailto'];
@@ -35,11 +40,21 @@
$finfo[0]['emailfrom']=$_SESSION['user']['email'];
}
}
+ if (!isset($this->config['multirecipients'][$group]) and isset($this->config['multirecipients']['*'])) {
+ $this->config['multirecipients'][$group]=$this->config['multirecipients']['*'];
+ }
if ($finfo[0]['emailto']!='') {
- if (!validEmail($_POST['emailto'])) {
- app()->error(tr('Destination e-mail address isn\'t valid!'));
- return false;
+ if ($this->config['multirecipients'][$group]=='1') {
+ $emailto = split(';',$_POST['emailto']);
+ } else {
+ $emailto[0] = $_POST['emailto'];
}
+ foreach ($emailto as $destination) {
+ if (!validEmail($destination)) {
+ app()->error(tr('Destination e-mail address "%1" isn\'t valid!',$destination));
+ return false;
+ }
+ }
}
return true;
@@ -97,4 +112,4 @@
return true;
}
}
-}
\ No newline at end of file
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-16 16:39:09
|
Revision: 325
http://openupload.svn.sourceforge.net/openupload/?rev=325&view=rev
Author: tsdogs
Date: 2009-06-16 16:39:05 +0000 (Tue, 16 Jun 2009)
Log Message:
-----------
new data structure
Added Paths:
-----------
trunk/data/files/
trunk/data/txtdb/
Removed Paths:
-------------
trunk/txtdb/
Property changes on: trunk/data/txtdb
___________________________________________________________________
Added: svn:mergeinfo
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-13 13:02:42
|
Revision: 324
http://openupload.svn.sourceforge.net/openupload/?rev=324&view=rev
Author: tsdogs
Date: 2009-06-13 13:02:34 +0000 (Sat, 13 Jun 2009)
Log Message:
-----------
fix typo preventing upload progress to work
Modified Paths:
--------------
trunk/templates/default/modules/files/uploadProgress.tpl
Modified: trunk/templates/default/modules/files/uploadProgress.tpl
===================================================================
--- trunk/templates/default/modules/files/uploadProgress.tpl 2009-06-13 13:01:26 UTC (rev 323)
+++ trunk/templates/default/modules/files/uploadProgress.tpl 2009-06-13 13:02:34 UTC (rev 324)
@@ -1,5 +1,5 @@
<center><img src="{tpl file=/img/wait.gif}"> {tr}Uploading{/tr}:
-{if $progress.complete>0}{$progress.complete|fsize_format} [tr}of{/tr} {$progress.total|fsize_format} <b>({$progress.percentage}%)</b>
+{if $progress.complete>0}{$progress.complete|fsize_format} {tr}of{/tr} {$progress.total|fsize_format} <b>({$progress.percentage}%)</b>
{else}
{tr}please wait ...{/tr}
{/if}</center>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ts...@us...> - 2009-06-13 13:01:33
|
Revision: 323
http://openupload.svn.sourceforge.net/openupload/?rev=323&view=rev
Author: tsdogs
Date: 2009-06-13 13:01:26 +0000 (Sat, 13 Jun 2009)
Log Message:
-----------
Organize a little the work to be done for next release
Modified Paths:
--------------
trunk/TODO
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2009-06-09 21:50:43 UTC (rev 322)
+++ trunk/TODO 2009-06-13 13:01:26 UTC (rev 323)
@@ -1,23 +1,69 @@
TODO list not priority ordered.
-******* MUST BE DONE BEFORE RELEASE 0.4 *******
+******* TARGETED FOR RELEASE 0.5 *******
+
Administration
+ - Move the logic of administration inside the modules (where possibile)
- A way to add / remove plugins and a way to sort them out
Users
- Add paging to new "My Files" feature
+ - Add more personal options (defaults)
+Setup
+ - Check for required paths to be writable...
+ - Check for zip/tar ?
+ - Enable TXTDB initialization
+
+Templates
+ - Review the template (and maybe add a new one)
+ - Better multifile selection
+
+Database
+ - Change the txtdb to something like gladius
+ - Add the join function
+ - Review the database structure
+ - Add a way to upgrade the structure/data
+
+LDAP
+ - AD and LDAP behave too much different, separate the module (or at least the differences)
+ - use ADLdap ?
+
+New features
+ - Files visible to groups, could also add the possibility to decide wether the file is "public" or "private"
+ - API
+ - "guest" functionality
+ - User might decide duration of a file
+ - Cronjob for removal/maintainence
+ - Add perl CGI for upload
+ - Email personalization (templating)
+ - Add possibility to select a file already on the server FS.
+ - Possibility to add personalized fields to be completed (on registration, file upload, etc)
+ - User account expiration
+
+Things to modify
+ - Change upload tracking technology (no prototype.js)
+ - Don't like all that step etc.
+ - review the ACL/function names to be more self explaining
+ - Edit file properties
+ - Maybe a single step upload, change/add properties
+ - Mime types must be handled on the server (not from the browser)
+ - directory structure for "volatile" data
+
+Plugins
+ - Review the plugins as to permit to extend all the app functionality
+
+Documentation
+ - Will this ever be done :) ?
+
+******* MUST BE DONE BEFORE RELEASE 0.4 *******
+
Bugs
- Fix all bugs I find in 0.4beta (I hope somebody else will report some if they exsist)
Database
- txtdb deep testing (switch ?)
-Setup
- - Check for required paths to be writable...
- - Check for zip/tar ?
- - Enable TXTDB initialization
-
SQL
- Update with default options for plugins
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|