For various reasons, it's nicer to have a class for theme-file paths
and such. So, I've rewritten the code for determining the locations of
theme files to be more OOPy.
I changed all the uses of the two functions in the module (theme_file
and theme_path) to use Theme::file and Theme::path respectively.
I've also removed the code in common.php that require's the module;
using a class means we can autoload it instead.
Caching support will be added in future work after unit tests have been added.
* extlib: add PEAR HTTP_Request2 0.4.1 alpha
* extlib: update PEAR Net_URL2 to 0.3.0 beta for HTTP_Request2 compatibility
* moved direct usage of CURL and file_get_contents to HTTPClient class, excluding external-sourced libraries
* adapted GeonamesPlugin for new HTTPResponse interface
Note some plugins haven't been fully tested yet.
Caching support will be added in future work after unit tests have been added.
* extlib: add PEAR HTTP_Request2 0.4.1 alpha
* extlib: update PEAR Net_URL2 to 0.3.0 beta for HTTP_Request2 compatibility
* moved direct usage of CURL and file_get_contents to HTTPClient class, excluding external-sourced libraries
Note some plugins haven't been tested yet.
Added 4 new events involved in XRDS: StartUserXRDS, EndUserXRDS, StartPublicXRDS, EndPublicXRDS
Added OpenID provider functionality (no delegation support [yet])
* api-media-upload:
Rearanged a couple things & removed debugging statements
Rework MailDaemon to use the MediaFile class for uploads
Implement media upload in the API
Extract media upload stuff into its own library class.
* OMB remote updates were trying to load nonexistent Laconica_OMB_Service_Consumer class -- fixed to StatusNet_OMB_Service_Consumer. Regression caused during libomb merge.
* Twitter processing was still being queued from core when no twitter plugin was present, which triggered an exception from UnqueueHandler; leftover code from before the plugin extraction.
* UnqueueHandler's exception caused a fatal error instead because it was missing the "new" keyword. Wouldn't have been seen when testing with the plugin enabled.
of empty notice prefix text in facebook settings.
Filed bug upstream at http://bugs.developers.facebook.com/show_bug.cgi?id=7110
Per documentation, saving a pref value of "" or "0" will delete the pref key:
http://wiki.developers.facebook.com/index.php/Data.setUserPreference
which used to do what we want... Now Facebook throws back an error
"Parameter value is required" when we do this. Workaround appends a
space to empty string or "0" at save time, then trims the string when
we load it.
The input string was already trimmed at pref save time, so this won't
alter any user-visible behavior.
Thanks to ^demon in #mediawiki for pointing out the behavior regression
after testing the identi.ca Facebook app!
of empty notice prefix text in facebook settings.
Filed bug upstream at http://bugs.developers.facebook.com/show_bug.cgi?id=7110
Per documentation, saving a pref value of "" or "0" will delete the pref key:
http://wiki.developers.facebook.com/index.php/Data.setUserPreference
which used to do what we want... Now Facebook throws back an error
"Parameter value is required" when we do this. Workaround appends a
space to empty string or "0" at save time, then trims the string when
we load it.
The input string was already trimmed at pref save time, so this won't
alter any user-visible behavior.
Thanks to ^demon in #mediawiki for pointing out the behavior regression
after testing the identi.ca Facebook app!
Set "en_US" locale first, then the locale we want for our user.
This seems to initialize gettext properly somehow, which I could see when the languages would come up briefly on settings save when changing from a supported language.
Definitely works for ga_ES on my Ubuntu system (8.10 intrepid), hopefully reasonably consistent.
* 0.9.x: (247 commits)
Added in credits.
Use site's name for basic auth realm
Make apigroupcreate.php pass phpcs
Took out some unnecessary intializations
Implemented create group api
CamelCase all function names in the API code
These same params are used in most API actions; moved to base API class
Missed some of the references to the old TwitterApiAction - removed
Remove more redundant $formats
Remove dead code
Move all basic auth output and processing to base classes
$format is used by every API action. Set it in the base class.
Delete action/api.php and rename lib/twitterapi.php to lib/api.php
New actions for blocks via API
fix FBConnect so it doesn't muffle EndPrimaryNav
don't write session if it's unchanged
Fixed facebook connect primary nav to hide search option when site is private and user is not logged in
Fixed facebook connect primary nav to obey sms/twitter/openid settings
Fixed facebook connect login nav to obey openid settings
Fixed facebook connect nav to obey sms/twitter disabled
...
Merge branch '0.9.x' into refactor-api
* 0.9.x:
Implemented create group api
fix FBConnect so it doesn't muffle EndPrimaryNav
don't write session if it's unchanged
Fixed facebook connect primary nav to hide search option when site is private and user is not logged in
Fixed facebook connect primary nav to obey sms/twitter/openid settings
Fixed facebook connect login nav to obey openid settings
Fixed facebook connect nav to obey sms/twitter disabled
Fixed twitter defaulting to disabled
Revert "Open tags should have closing tags"
Don't show search suggestions for private sites
Fixed E_NOTICE when returnto isn't set
Fixed E_NOTICE when the "lite" parameter isn't included in the request
Fixed E_NOTICE - GroupList expects an owner object in the constructor, not an array of search terms
Returning false seems to fix IE from reclaiming window focus. I think
Aligning notice attach label from right instead of left
Fixed IE background image alignment for attach, favour and disfavour
Fixed nudge and direct message background image alignment
Using 'CSS sprites' for common icons for the identica theme. Default
Open tags should have closing tags
Conflicts:
actions/twitapigroups.php
actions/twitapistatuses.php
* 0.9.x: (23 commits)
Added hook to wrap the notice form data block
Unnecessary selector bit
Removed obsolete iphone theme (pre v0.7)
remove spurious readme from Orbited
need to show scripts at end of body in RealtimePlugin
Some changes required from Orbited debugging
Update OrbitedPlugin to work with RealtimePlugin framework
updated OrbitedPlugin to use RealtimePlugin
remove unused files for OrbitedPlugin
rename plugin
copy Comet plugin to Orbited
move scripts to just before </body>, add event for scripts that need to be in <head>
reformat Notice.php
added all them doxygens
Using CDATA for autofocus script
more doxygen
added doxygen
indent fix
better handling of y response in deleteuser.php
script to permanently delete a user
...
* 0.9.x:
change DB so OpenIDPlugin manages OpenID tables
Some bug fixes
check the schema
add some more methods to Schema
Added hook for Aside container
Revert "Outputting UTF-8 charset in document header irrespective of mimetype."
FOAF for Groups.
use schema tool to create a table
statusize schema-related modules
test script for schema code
make table def method of schema code work
start a module for schema management
* 0.9.x: (39 commits)
Timeout a little incase the notice item from XHR response is
Relocated the button for pop up window for notice stream
Script no longer needed for Realtime plugin
Better check to see if the XML prolog should be outputted for XML
Outputting UTF-8 charset in document header irrespective of mimetype.
Switched Doctype to XHTML 1.0 Strict (which best reflects the current
Twitter API returns server errors in preferred format
move HTTP error code strings to class variables
remove string-checks from code using Notice::saveNew()
change string return from Notice::saveNew to exceptions
stop overwriting created timestamp on group edit
Forgot to add home_timeline to the list of methods that only require
Forgot to add home_timeline to the list of methods that only require
moderator can delete another user's notice
show delete button when user has deleteOthersNotice right
let hooks override standard user rights
user rights
Merge DeleteAction class into DeletenoticeAction
Fix some bugs in the URL linkification, and fixed the unit test.
Fix URL linkification test cases for addition of 'title' attribution with long URL in f3c8fccc
...
The DeleteAction class checked for notice information, and only had
one subclass: DeletenoticeAction. I couldn't figure out any other
class that would subclass it, so I combined the two into a single class.
* 0.9.x: (88 commits)
Left a couple debugging statements in (removed)
Output If-Modified-Since header for all RSS 1.0 feeds (again)
Revert "move scripts to just before </body>, add event for scripts that need to be in <head>"
Implemented join and leave groups api methods
implemented etag and last modified
Fixed broken Piwik plugin - was not using the supplied site code
move scripts to just before </body>, add event for scripts that need to be in <head>
some UI fixes
Using timeline string instead of title for WindowName because IE doesn't
Added JavaScript to initialize the poped Window
Some layout and rendering adjustment for Realtime plugin
Created addPop() for Realtime plugin and added param to include iconurl
move some stuff around for realtime
hack around address hack in util.js
Add some more realtime feeds
Do realtime popup with PHP instead of Javascript
JavaScript fixes for IE
Revert "Added realtime streams for all and showstream timelines"
Revert "Fixed indenting"
Revert "Made it slighly more compact with less jQuery selection"
...
This reverts commit 20997619b3.
The commit doesn't take into account having different servers (theme
server, avatar server) and being able to set HTTPS for some but not all.
* If no shortener plugin is enabled, fall back to using the long URL instead of trying to load nonexistent ur1.ca plugin and throwing 'Class does not exist'
* Fix bad call to call_user_func_array() in callback_helper() which broke all shortening
* 0.9.x: (57 commits)
Updated csarven emails to csarven@status.net and removed dupes
statusize new HTTP classes
dedupe evans
change all evans to evan@status.net
add post to curlclient
fix user-agent for curlclient
add get to curl client
add cURL client with HEAD method
add user agent and correct version check to httpclient
statusize OpenID plugin
add http client config value
update httpclient class
move httputil to httpclient
Start a common library for HTTP client stuff
check correct define (not backwards compatible)
Fixed broken list items in installer output
Got rid of a bunch of ugly warnings
Add Jiminy to notice sources
Make it impossible to delete self-subscriptions via the API
Fix bad merge d7ae0ed4fd
...
* extlib/Stomp.php
-spaces for tabs (we're on PEAR, right?)
- send: initialize the $properties parameter as array() instead of null
this prevents unsetting $headers if $properties was not set
(besides that, it's the proper way to initialize an array)
- subscribe: insert FIXME's on ActiveMQ specifics
- ack: make sure the content-length header is set *and* is zero.
I have seen the header set to '3' there but could not find where it
came from, this is at least safe.
- disconnect: typo in $headers variable
- readFrame: use fgets() instead of gets() so that RabbitQ, which is more protocol strict can also play
* extlib/Stomp/Frame.php
- spaces for tabs
- add note on possibly protocol violating linefeed
* extlib/Stomp/Message.php
- space for tabs
- add content-length header for message
* lib/stompqueuemanager.php
- use the notice for logging, not the frame