Added EmailAuthenticationPlugin
Added ReverseUsernameAuthenticationPlugin
Changed the StartChangePassword and EndChangePassword events to take a user, instead of a nickname
User::allowed_nickname was declared non-static, but used as if it was static, so I made the declaration static
* 0.9.x:
Added a events for the settings menu items
Bringing Sphinx search support up to code: broken out to a plugin, now supports multiple sites on a single server.
Changed to Evan's event style and added an AuthPlugin superclass
add geo output to statuses in json, xml, atom, rss in API
Localisation updates from translatewiki.net (2009-11-10)
Localisation updates from translatewiki.net
Update pot
add lat and long parameters to api/statuses/update
change credential check to work more like other events
fixup output of object attributes in db error code
Performance fix for subscription/subscriber lists based on feedback from ops.
Adjusting indexes to make favorites query more efficient, based on feedback from ops.
Revert untested code; spews PHP notice warnings on every page view: "just sent a http 200 for the check-fancy from install.php"
Added hook for the Group navigation items
Updated block @title text (shouldn't say from group)
Updated group block markup
Revert "Remove more contractions"
Upgrade notes:
* Index names have changed from hardcoded 'Identica_people' and 'Identica_notices' to use the database name and actual table names. Must reindex.
New events:
* GetSearchEngine to override default search engine class selection from plugins
New scripts:
* gen_config.php generates a sphinx.conf from database configuration (with theoretical support for status_network table, but it doesn't seem to be cleanly queriable right now without knowing the db setup info for that. Needs generalized support.)
* Replaced old sphinx-indexer.sh and sphinx-cron.sh with index_update.php
Other fixes:
* sphinx.conf.sample better matches our live config, skipping unused stopword list and using a more realistic indexer memory limit
Further notes:
* Probably doesn't work right with PostgreSQL yet; Sphinx can pull from PG but the extraction queries currently look like they use some MySQL-specific functions.
* 0.9.x: (26 commits)
just sent a http 200 for the check-fancy from install.php
Add a new event: CanUserChangeField
shorten flag notification and include a class
Added flag icon for UserFlag plugin
Fixed notice option alignment in IE
add a method to Theme class to list available themes
Updated Realtime plugin to use the util's NoticeReply object
Localisation updates from translatewiki.net (2009-11-08)
Update pot again
Rebuild pot file *without* --join-existing to get rid of the cruft. Not sure why "--join-existing" must be in. Only thing I can think of is manual additions, which I could not find.
Revert "More precise field label"
Remove more contractions
Revert "* [Cc]an't -> [Cc]annot"
Revert "More specifics on 'address'"
* [Cc]an't -> [Cc]annot
Revert "* check usage of 'people' in UI and change it to 'users' or something else in most places"
add utilities for calculating local and installation theme root dirs
Harmonise UI message "No such user."
Restructure theme.php to define a class Theme
entity_action responses look more inactive now
...
This reverts commit 6483fbd8fa.
"SMS address" header here makes no sense; it would be inconsistent with the other tabs and headings on the same and related pages, and would look very awkward with another giant "SMS" right above it
This reverts commit 1872d07602.
"instant messages address" is very awkward phrasing; prefer not to be changing UI in such ways while updating localisations.
This reverts commit 81b4a381d9.
IMO "user" is a bit impersonal and we shouldn't go changing the tone of the UI willy-nilly when we're updating localisations.
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.
doesn't like the XHR response with XHTML DTD. New notices without the
file attachment work fine.
The rendered content (the anchor for the file attachment link) doesn't
appear to be the issue.
To fix this problem, I removed the XHTML DTD line from newnotice's XHR
response. This is unnecessary for text/xml outputs that's intended
for XHR responses any way. It just happens to fix an IE issue.
Still a mystery to me as to why it is particular to notices with file
attachments.
doesn't like the XHR response with XHTML DTD. New notices without the
file attachment work fine.
The rendered content (the anchor for the file attachment link) doesn't
appear to be the issue.
To fix this problem, I removed the XHTML DTD line from newnotice's XHR
response. This is unnecessary for text/xml outputs that's intended
for XHR responses any way. It just happens to fix an IE issue.
Still a mystery to me as to why it is particular to notices with file
attachments.
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.
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!
* 0.9.x:
Include long-form attachment URL in notice if URL shortening is disabled.
Updated default theme to use the CSS Sprites method for common icons
Added a new plugin that requires a user to have a validated email address before being allowed to post notices
Don't trigger E_NOTICE when looking for commands in the notice input
Previously, the attachment URL would simply be dropped when shortening returned false instead of a short URL... the attachment was present if you clicked through to notice details but didn't appear in the timeline, making it nigh-impossible to see the attachment.
Previously, the attachment URL would simply be dropped when shortening returned false instead of a short URL... the attachment was present if you clicked through to notice details but didn't appear in the timeline, making it nigh-impossible to see the attachment.
* 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:
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"
...
* 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
...
This reverts commit 14b46e2183.
This functionality will need to be rewritten to work with the new
OpenIDPlugin.
Conflicts:
index.php
lib/logingroupnav.php
For Example, let's say 'alias' was an alias for the group 'group'.
Previously, if you went to '/group/group' it'd work, but '/group/alias' it'd say "No Such Group".
This was untrue.
Now it checks aliases when it can't find a group with a given name.
If it finds one it redirects you to the original group.
http://laconi.ca/trac/ticket/1563
OpenSearch description info is now sent with correct Content-Type: application/opensearchdescription+xml instead of text/html.
If $config['openid']['enabled'] is set to false, OpenID is removed from
the navigation and direct accesses to OpenID login pages redirect to the
login page.
If OpenID is enabled, $config['site']['openidonly'] is ignored, i.e.
OpenID is required to go OpenID-only.
If $config['site']['openidonly'] is set to true:
* the Login/Register pages will be removed from the navigation;
* directly accesses to the Login/Register pages will redirect to the
OpenID login page;
* most links to the Login/Register pages will link to the OpenID login
page instead.
The user will still need to set a password to access the API and RSS
feeds.
As a first step to pluginizing our OpenID support, I've moved the
important OpenID-related files to a dedicated plugin directory. Many
of these classes are still referred to by libraries that are still in
core.
* candrews-review:
maildaemon makes mail attachments into notice attachments
File classes does not use the $FILES array directly, as users of this class aren't necessarily from the web
* commit 'jeff-themovie/small-fixes':
Fix missing max_id in API search calls
Fix "Trying to get property of non-object" errors when a user tries to log in using an unknown nickname
Fix "Trying to get property of non-object" errors when accessing the people search results page
Fix "Undefined variable: cnt"
Fix "Trying to get property of non-object" errors in groupeditform.php
Fix "Undefined property: DisfavorAction::$id"
* commit 'jeff-themovie/group-rss-empty':
Fixes two PHP Warnings ("Invalid argument supplied for foreach() in /var/www/mmmu/lib/rssaction.php") when accessing the RSS feed of a group that has no notices.
* commit 'erichelgeson/no-posts-verbage':
Needed the else. Tested logged in/out ; site closed/inviteonly/both
Verbage of a closed invite only site, it shouldnt ask you to register.
* '0.8.x' of git@gitorious.org:laconica/dev: (61 commits)
Using default theme design values (it was previously set to identica
Updated default colour theme and IE6 colours for transparent values
chmod +x delete_status_network.sh
rm -Rf, not rmdir
script to delete a status network
chmod allsites.php
script to show all sites on a network
use different name for connection and database
use /etc/laconica/setup.cfg instead of local file
other base directories
On XHR notice post, calls NoticeAttachment to trigger thumbnail and
oembed and thumbnail don't need sequences
add innodb by default to status networks
pwgen not pwdgen
make pwgen command configurable
a little sql script to drop full-text index and use innodb for profile and notice
remove common_debug from newnotice
append uploads to content rather than showing them double
use a subclass for single notice items to show attachments
make file command configurable
...
* userdesign: (56 commits)
Fix for background image repetition for various page heights
Removed height:100% for better background image repetition
A little more specific selector for notice reply
Have user favorites page show user's design
Placed a check to make sure there is a reply button in a notice before
Make MailboxAction read only
Remove stale reference to deprecated personal.php
Uppercase hex color values
Default to image being on, no tile after upload
Fix sidebar color bug default design
Update background image settings to use bitflags
It was accidently removed
Dynamically tile background image and turn background image on or off
Show a background img in settings form
IE7/8 CSS update for user design
Enable tiling of background imgs for Designs
Added background image tile flag to Design
Init styles for tile and image use on/off for user design settings
Added form option to tile background image and to turn it on and off
Add background dir
...
* 0.8.x:
Moved url handling to its proper place, from newnotice to Notice.php
Removed more dead code.
Brought back borders for content, navigation, aside_primary but
Minor margin value change
More contrast for tabs
UI updates:
* 0.8.x:
a little better query handling in redirect code
a little better query handling in redirect code
forgot some functions aren't available at status time
redirect on non-canonical server name
don't show create-a-group link if not logged in
allow a configured base for cache keys
Missing call to getProfile() caused verify_credentials to fail.
change mods for setup script
Script to set up new status networks
strncmp -> strcasecmp
Return network from network setup function
Configurable avatar directory
* 0.8.x: (32 commits)
updates to Status_network
makeadmin action
make admins of groups
show aliases when showing a group
Link and distribute notices tagged for a group alias
Code for adding and saving group aliases
Styles for group block
add correct li for css magic for block stuff
typo in profileminilist class
return count from show
try to get the right class for profileminilist
fix perms for classes/statusnet.ini
fixup perms for classes
Added Group_alias class
add a table for group aliases
Cross-browser notice_attach
Allow users to be unblocked from a group
Some UI improvements for blocking and unblocking
The rest of the things necessary to make group block work
Make group block work
...
Conflicts:
db/laconica.sql
lib/common.php
Added code to add and save group aliases. Like tags, aliases are
free-texted in to the group admin page. configurable max number of
aliases, default is three.
List users who are blocked from joining a group. Add a form to let
them be unblocked. Add an action that removes the block. Includes
changes to group and groupblock classes.
Add unblock to the router table, so unblocking will work at all.
Block form and unblock form return to subscribers list, not
subscriptions list, by default.
showstream action sends its parameters to block and unblock forms to
better return to the right page.
Expanded the ProfileList class so it worked more like a recipe. This
helps to get rid of a lot of special cases and simplifies the code. It
also makes it possible to do things like group block.
If a user does a notice search that should return no matching notices, the RSS feed / API results for that search currently returns all notices instead of no notices. This fixes it so that an empty list is returned instead.
The invite function may not applicable for private and/or closed installs. This adds a configuration option to enable/disable invites (defaulting to enabled), hides the "Invite" nav item when necessary, and adds a check to actions/invite.php.
Note that I haven't tried the Facebook application so I didn't add any checks to actions/facebookinvite.php.
http://laconi.ca/trac/ticket/1367
One of the bugs was to replace foaf:knows with the weaker
sioc:follows. This is done, but foaf:knows is also retained when the
subscription is bidirectional.
Primary topic of the file is an Agent rather than a Person.
rdfs:comment replaced by bio:olb which is a fairly popular RDF
property for one-line biographies
rdf:about attribute to the <OnlineAccount> elements in a manner
consistent with the RSS 1.0 feed.
Changed the OnlineAccount's homepage property to an accountProfilePage
property. Will be added to FOAF spec soon (already widely used).
Added a <weblog> property from the Agent to their profile page.
Thanks to Toby Inkster for the patch.
http://buzzword.org.uk/2009/laconica-0.7.3-foafsioc.patch