1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-02-24 20:13:22 +01:00

181 Commits

Author SHA1 Message Date
Nils Adermann
6d0b183553 Merge pull request #1367 from EXreaction/ticket/11454
Ticket/11454 - Jabber notifications are not working at all
2013-04-25 03:59:34 -07:00
Nathaniel Guse
0d2d72e8ee [ticket/11454] Check if the fields are set
PHPBB3-11454
2013-04-24 20:28:35 -05:00
Nathaniel Guse
ebb5169a46 [ticket/11454] Add messenger function set_addresses
Automatically fills to/im from a user row

Send messenger the Jabber address if using Jabber notifications

PHPBB3-11454
2013-04-24 15:19:37 -05:00
Joas Schilling
6a3d77d76e [ticket/10844] Add phpbb_root_path to phpbb_style_extension_path_provider
The phpbb_root_path needs to be removed from the style path, before giving
the path to the finder, because the finder prepends it later again and is
therefor unable to find style files when the root path is not ./

PHPBB3-10844
2013-04-12 21:35:06 +02:00
Andreas Fischer
558ecdcd40 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10986] message.id fallback to SERVER_NAME or phpbb.generated
2013-02-24 20:55:01 +01:00
Nils Adermann
4615698807 [ticket/10986] message.id fallback to SERVER_NAME or phpbb.generated
Rather than send invalid message ids with a missing domain part we try
to read one from $_SERVER and otherwise use phpbb.generated

PHPBB3-10986
2013-02-24 19:07:24 +01:00
Nathan Guse
ec074eb97c [ticket/11263] Fix PHP Notice: Undefined variable: extension_manager
$extension_manager should be $phpbb_extension_manager

PHPBB3-11263
2012-12-13 13:10:26 -06:00
David King
a9db155c28 Merge remote-tracking branch 'p/feature/template-events' into develop
# By Oleg Pudeyev (36) and others
# Via Oleg Pudeyev
* p/feature/template-events: (47 commits)
  [feature/template-events] Pass arguments in correct order.
  [feature/template-events] Order extensions in mock extension manager.
  [feature/template-events] Changes per imkingdavid's review.
  [feature/template-events] Make style names private on template.
  [feature/template-events] Test for event that is defined in parent style only.
  [feature/template-events] Specify style names, add inheritance tests.
  [feature/template-events] Normalize expected directory trees.
  [feature/template-events] Allow dataset to be correctly selectable.
  [feature/template-events] Dataset for template event testing with inheritance.
  [feature/template-events] Use style names array in template filter.
  [feature/template-events] Generate style names array in set_style.
  [feature/template-events] Convert a single style name to array of them.
  [feature/template-events] Chase dependency injection for template context.
  [feature/template-events] Adjust template events test to use the dataset.
  [feature/template-events] Create a dataset for template event tests.
  [feature/template-events] Indentation fix.
  [feature/template-events] Cosmetic changes.
  [feature/template-events] Wording: wrongly -> improperly.
  [feature/template-events] Indentation fix.
  [feature/template-events] Rename template_name to style_name.
  ...
2012-12-10 14:09:10 -05:00
Andreas Fischer
4f947ebb47 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10602] Avoid a race condition.
  [ticket/10602] Use last_queue_run for its intended purpose.

Conflicts:
	phpBB/includes/functions_messenger.php
2012-12-05 10:03:29 +01:00
Oleg Pudeyev
1e50116c54 [ticket/10602] Avoid a race condition.
PHPBB3-10602
2012-12-05 00:57:24 -05:00
Oleg Pudeyev
03f819862f [ticket/10602] Use last_queue_run for its intended purpose.
We keep the last queue run time around, therefore for determining
whether enough time has passed since the last run we can simply
use this config variable.

When there is no queue file we consider a queue run successful.

Previously queue.php ("cache file") modification time would be used
for determining whether enough time has passed since last queue run.
The problem was that modification time would be updated whenever
anything was added to the queue, creating a situation where if
queue is processed less frequently than it is added to that email
would not be sent.

PHPBB3-10602
2012-12-05 00:41:47 -05:00
Oleg Pudeyev
4010f4085a [ticket/10103] Use flock lock class in messenger.
PHPBB3-10103
2012-12-04 02:00:27 -05:00
Oleg Pudeyev
f08c28c77a [ticket/10103] Factor out flock lock class.
PHPBB3-10103
2012-12-04 02:00:10 -05:00
Oleg Pudeyev
44d6dc4c4c [feature/template-events] Convert a single style name to array of them.
This allows template code to know the entire style hierarchy for
templates being rendered.

PHPBB3-9550
2012-11-17 16:42:40 -05:00
Oleg Pudeyev
d6c881d0c6 [feature/template-events] Inject extension manager into template class.
Template class passes extension manager to template compiler.

Template compiler passes extension manager to template filter.

Template filter will use extension manager to locate hooks
as it is compiling templates.

All extension manager arguments are optional. If an extension
manager is not given, template hooks will not be invoked.

PHPBB3-9550
2012-11-17 16:39:54 -05:00
Oleg Pudeyev
767d09227b [ticket/10933] Dependency inject template context.
PHPBB3-10933
2012-11-02 18:51:35 -04:00
Vjacheslav Trushkin
d91abbb146 [ticket/10756] Renaming phpbb_style_template to phpbb_template
Renaming phpbb_style_template to phpbb_template

PHPBB3-10756
2012-04-19 04:25:25 +02:00
Vjacheslav Trushkin
6cecc91326 [ticket/10756] Removing path provider from template class
Removing path provider from template class because it is not used by template class

PHPBB3-10756
2012-04-19 04:21:56 +02:00
Vjacheslav Trushkin
57065095d5 [ticket/10754] Changing $style to $phpbb_style
Renaming global variable $style to $phpbb_style

PHPBB3-10754
2012-04-03 00:41:56 +03:00
Vjacheslav Trushkin
17989c17a0 [feature/merging-style-components] Moving template initialization out of style
Moving template initialization out of style constructor

PHPBB3-10632
2012-03-31 18:10:00 +03:00
Vjacheslav Trushkin
360312f599 [feature/merging-style-components] Initializing locator and provider separately
Moving locator and path provider initialization out of style class

PHPBB3-10632
2012-03-31 17:38:30 +03:00
Vjacheslav Trushkin
fd96f97dc3 [feature/merging-style-components] Updating style initialization
Changing template initialization to style initialization.

PHPBB3-10632
2012-03-15 21:11:34 +02:00
Vjacheslav Trushkin
3997ffac2a [feature/merging-style-components] Creating style class
Creating phpbb_style class, changing template initialization to style initialization

PHPBB3-10632
2012-03-15 13:13:21 +02:00
Vjacheslav Trushkin
b7d84a586c [feature/merging-style-components] Renaming template classes
Changing template classes prefixes from phpbb_template to phpbb_style (for classes that will work with styles) or phpbb_style_template (for classes that are specific to templates)

PHPBB3-10632
2012-03-14 23:12:11 +02:00
Andreas Fischer
237ddf9d22 [ticket/10076] STARTTLS support for SMTP via smtp_class.
PHPBB3-10076
2012-01-28 22:51:35 +01:00
Andreas Fischer
ac492d8f1e [ticket/10076] Move EHLO/HELO code into its own method.
PHPBB3-10076
2012-01-28 22:51:34 +01:00
Andreas Fischer
69a725198b Merge remote-tracking branch 'unknownbliss/ticket/9916' into develop
* unknownbliss/ticket/9916:
  [ticket/9916] Updating header license and removing Version $Id$
2012-01-02 17:54:54 +01:00
Unknown
7a04c9048c [ticket/9916] Updating header license and removing Version $Id$
PHPBB3-9916
2011-12-31 13:32:52 +00:00
Igor Wiedler
96114f7e35 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10538] Call htmlspecialchars_decode() on Jabber and SMTP passwords.
2011-12-28 16:41:38 +01:00
Andreas Fischer
82fff947c6 [ticket/10538] Call htmlspecialchars_decode() on Jabber and SMTP passwords.
PHPBB3-10538
2011-12-19 14:24:39 +01:00
Igor Wiedler
d766ee3fe6 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10446] Pass $config and $user via parameter to anti_abuse_headers().
  [ticket/10446] Remove leftover $headers parameter from anti_abuse_headers().
  [ticket/10446] RFC2047 encode user/server names in X-AntiAbuse headers.
  [ticket/10446] DRY X-AntiAbuse header addition.

Conflicts:
	phpBB/includes/ucp/ucp_register.php
2011-11-20 18:45:56 +01:00
Andreas Fischer
37c7668193 [ticket/10446] Pass $config and $user via parameter to anti_abuse_headers().
PHPBB3-10446
2011-11-20 16:35:31 +01:00
Andreas Fischer
a7077c9149 [ticket/10446] Remove leftover $headers parameter from anti_abuse_headers().
PHPBB3-10446
2011-11-20 14:02:22 +01:00
Oleg Pudeyev
c68973a9e0 [ticket/10446] RFC2047 encode user/server names in X-AntiAbuse headers.
PHPBB3-10446
2011-11-20 04:17:42 -05:00
Oleg Pudeyev
64d62038cd [ticket/10446] DRY X-AntiAbuse header addition.
PHPBB3-10446
2011-11-20 04:15:44 -05:00
Nils Adermann
520a5f9295 [feature/extension-manager] Refactoring the structure of extension provider
PHPBB3-10323
2011-09-29 16:15:53 +02:00
Nils Adermann
ea46feb115 [feature/extension-manager] Add support for templates in extensions.
This commit adds a template path provider to separate the process of locating
(cached) paths in extensions from the template engine. The locator is supplied
with a list of paths from the path provider.

Admin templates can now be created in ext/<ext>/adm/style/ and regular
templates go into ext/<ext>/styles/<style>/template/. Extension templates
override regular templates. So if an extension supplies a file with a name
used in phpBB, the extension's file will be used.

A side-effect of this commit: Locator and Provider are now able to deal with
arbitrary levels of template inheritance. So we can expose this through
phpbb_template if we choose to, and allow styles to inherit from inherited
styles.

PHPBB3-10323
2011-09-29 16:15:53 +02:00
Nils Adermann
d0f5b527fe Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10245] Use error_collector instead of ob_start() and ob_get_clean().
2011-09-18 23:25:57 +02:00
Andreas Fischer
05515e0510 [ticket/10245] Use error_collector instead of ob_start() and ob_get_clean().
PHPBB3-10245
2011-09-18 22:04:34 +02:00
Igor Wiedler
c5cef773c4 [feature/request-class] Adjust code base to do html decoding manually
PHPBB3-9716
2011-08-18 23:44:30 +02:00
Igor Wiedler
38c65da553 Merge branch 'develop' into feature/request-class
* develop: (157 commits)
  [ticket/10316] Resolve inconsistent move topic behavior
  [ticket/9297] Add network to class name of unit tests.
  [ticket/9297] Fix typo in localhost.
  [ticket/9297] Rename test class to reflect its contents.
  [ticket/9297] Adjust comment - IPv6 is needed for IPv6 connections to work.
  [ticket/9297] Fix markTestSkipped call in setUpBeforeClass.
  [ticket/9608] Remove use of references in topic_review
  [ticket/9297] Skip FTP PASV/EPSV test if FTP connection fails.
  [ticket/9297] Separate ipv4 and ipv6 tests into separate functions.
  [ticket/9297] Update copyright year of unit test file.
  [feature/template-engine] Delete _get_locator function.
  [feature/template-engine] Clean up template locator usage in bbcode.
  [ticket/9297] Make EPSV unit tests work without IPv6.
  [ticket/9297] Unit tests for ftp_fsock PASV and EPSV.
  [ticket/9297] Add support for Extended Passive Mode (EPSV) in ftp_fsock class.
  [ticket/10312] Un-check the shadow option while moving.
  [feature/template-engine] Need to call set_template on template.
  [feature/template-engine] Update installer for template engine changes.
  [feature/template-engine] Dependency inject locator into template.
  [feature/template-engine] Delete useless code from set_template.
  ...

Conflicts:
	phpBB/includes/functions.php
2011-08-18 22:31:25 +02:00
Oleg Pudeyev
acb767f14d [feature/template-engine] Dependency inject locator into template.
PHPBB3-9726
2011-08-09 23:28:40 -04:00
Igor Wiedler
0bf6966c52 [feature/request-class] Add server(), header() and is_ajax() to request
Extend the request class with helpers for reading server vars (server())
and HTTP request headers (header()). Refactor the existing code base
to make use of these helpers, make $_SERVER a deactivated super global.

Also introduce an is_ajax() method, which checks the X-Requested-With
header for the value 'XMLHttpRequest', which is sent by JavaScript
libraries, such as jQuery.

PHPBB3-9716
2011-07-15 22:34:24 +02:00
Oleg Pudeyev
d2ac05aa74 [feature/template-engine] Replaced globals with dependency injection.
PHPBB3-9726
2011-05-12 20:13:31 -04:00
Oleg Pudeyev
87832d06cc [feature/template-engine] Delete template class, use phpbb_template instead.
PHPBB3-9726
2011-05-04 00:08:20 -04:00
Andreas Fischer
6ff403c9f8 Merge branch 'ticket/cs278/9061' into develop-olympus
* ticket/cs278/9061:
  [ticket/9061] Simplify conditional statements by reworking the logic.
  [ticket/9061] Fixed a race condition in queue locking.
2010-10-27 13:06:21 +02:00
Chris Smith
9819700247 [ticket/9061] Simplify conditional statements by reworking the logic.
PHPBB3-9061
2010-10-27 11:31:42 +01:00
Oleg Pudeyev
01ef46a510 [ticket/9061] Fixed a race condition in queue locking.
Changed queue locking to cover all queue file operations,
in particular the check for queue file existince and
inclusion of queue file must be done under one lock.

Also refactored queue locking and unlocking into separate
methods.

PHPBB3-9061
2010-10-27 11:31:27 +01:00
Josh Woody
2f312b2175 [ticket/9559] Do not override queue package size in the case of an overflow
This reverts r8025 to includes/functions_messenger.php.  That code caused
problems on hosters with email limits less than package_size*2.5.  And it isn't
desirable in general to over-ride the admin's configuration options.

PHPBB3-9559
2010-07-22 10:44:31 -05:00
Nils Adermann
6e31ce8573 Do not store email templates in database. [Bug #54505]
To explain what this is about, first a short phpBB code history lesson: ;-)

r9823 originally introduced the usage of our template class for emails. The
messenger class uses set_custom_template() to initialise the template object
which neither disables storedb nor inheritance. These two values are set in
$user->theme rather than inside a particular template instance (quite a design
failure if I may add). Thus the html page that is displayed to the user also
determines these settings for the email templates. This obviously causes
problems because both emails and other custom templates can quite simply not
be stored in the database because the db table only stores the filename, not
the path and requires a template id.

r9839 then generally disabled storedb and template inheritance for custom
templates to fix Bug #40515. This works for custom templates, but not for
emails where lots of template objects are created. In such a situation the
last call to set(_custom)_template() would now determine the values of storedb
and inheritance in _tpl_load. So any page sending emails would neither load
its template from the database nor use template inheritance. The same revision
also introduced orig_tpl_* variables in set_template() which on their own are
very much pointless, but could allow resetting the storedb and inheritance
values if they were used to reset $user->theme just before template execution
in _tpl_load.

In r10150 these orig_tpl_* variables are correctly used to access information
about the template of the page being displayed - contrary to the last template
used - from within the bbcode, fixing Bug #51285. However r10150 also introduces
a pointless $template_mode parameter for set_custom_template(). $template_mode
is really just a boolean flag (value you can be 'template' or an arbitrary other
value) that if it set circumvents the unsetting of storedb and template
inheritance. The very code that had been added to prevent issues with emails and
custom templates. Fixing the problem introduced by r8839 but at the same time
reintroducing the much greater problem from the original implementation of email
templates.

And now an explanation of what I did:

Based on this I have now changed the set_custom_template method to always
disable storedb. It can now properly use inheritance, you simply tell it the
path where the parent template can be found, by default the path is false which
will turn inheritance off. To make this work the template class now always
overwrites $user->theme storedb and inheritance variabbles with orig_tpl_* just
before rendering a template in _tpl_load. This way they are guaranteed to always
contain the value they had at the time set_template/set_custom_template were
called. This fixes [Bug #54505].

In summary, using global state is simply a horrible idea in object oriented
programming. Always Pass values, that an object depends on, as parameters - never
through magic global variables. Following this principle will safe you from a lot
of headaches.

Please test this patch as much as possible to make sure templates still work
properly for you, focus on multiple languages, missing language files, and
custom templates in systems that make use of the template class outside of
phpBB itself.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10460 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 16:52:46 +00:00