Commit Graph

191 Commits

Author SHA1 Message Date
6028175bfc [Media] Fix issues with database file storage
Fixed file quota as well.

There can be more than one file for the same filehash IF the url are different.

Possible states:
  - A file with no url and with filename is a local file.
  - A file with an url but no filename is a remote file that wasn't fetched,
    not even the thumbnail.
  - A file with an url and filename is a fetched remote file (maybe just a
    thumbnail of it).
  - A file with no filename nor url is a redirect.

Routes:
  Given these states, updated routes so that an attachment can only be
  retrieved by id and a file by filehash.

Major API changes:
  File::getByHash now returns a yield of files

Major UI changes:
  - Now remote non stored files are presented.
  - /view became preferred
  - Redirects to remote originals are preferred.

Many other minor bug fixes...
2021-02-21 16:03:46 +00:00
Mikael Nordfeldth
bb72229d6a Show what you're replying to in the web interface 2017-04-30 10:37:21 +02:00
Mikael Nordfeldth
723b49a22a throw exception instead of clientError 2016-03-09 14:17:55 +01:00
Mikael Nordfeldth
73dbc5ca1b Use ToSelector choice again. 2016-02-17 23:44:15 +01:00
Mikael Nordfeldth
d73c264e25 Haha, forgot that the $content content must also be there! 2016-01-27 23:04:19 +01:00
Mikael Nordfeldth
a47563cf3d Don't add space if there's no string in new notice content 2016-01-27 22:41:53 +01:00
Mikael Nordfeldth
03d2b680f8 Allow empty new-notice content via web if there's an upload 2016-01-27 22:39:43 +01:00
Mikael Nordfeldth
33194b3cff Attention goes to the parent notice author too 2016-01-08 02:58:31 +01:00
Mikael Nordfeldth
c48871cf1b Notice from web now saves context->attention too! ;) 2016-01-07 23:24:15 +01:00
Mikael Nordfeldth
1f02dc639e shortenLinks _after_ media upload to be consistent with api 2016-01-07 18:14:45 +01:00
Mikael Nordfeldth
8ad6b8809a Don't abort on too long notices in Notice::saveActivity 2016-01-05 17:31:09 +01:00
Mikael Nordfeldth
0dfafe2567 NewnoticeAction now uses Notice::saveActivity(...) 2016-01-01 20:18:54 +01:00
Mikael Nordfeldth
1ea876296d A bunch of FormAction and ManagedAction synchronization 2015-03-08 20:41:42 +01:00
Mikael Nordfeldth
196df7d8a4 Change the title of NewnoticeAction if replying 2015-03-07 20:34:46 +01:00
Mikael Nordfeldth
8fac7a9f6c StatusNet class renamed GNUsocial
also added backward compatible StatusNet class for the two calls I know
third party plugins use, isHTTPS and getActivePlugins
2015-02-27 12:44:15 +01:00
Chimo
7cea3f9f11 Add 'statusnet_textarea' backward-compatibility 2015-02-10 10:53:24 -05:00
Chimo
d816af9aa9 Prepopulate newnotice from URL arg 2015-02-09 18:06:26 -05:00
Mikael Nordfeldth
8b585ff647 MediaFile upload simplifying 2015-01-21 17:39:48 +01:00
Mikael Nordfeldth
65c540478e newnotice action always returns the notice's URL
Maybe could return conversation URL, but this will do for now.
Courtesy of the Javascript haters.
2015-01-12 12:13:34 +01:00
Mikael Nordfeldth
370341ce31 Don't show notice form navs on newnotice action 2015-01-08 17:33:09 +01:00
Mikael Nordfeldth
55db74291c Using empty on a function return value (thanks mrvdb)
Source: https://gist.github.com/mrvdb/0b49dd3c580bcfbe1358
2014-07-15 18:15:36 +02:00
Mikael Nordfeldth
eb955fe629 "Notice posted" message in Ajax title for NewnoticeAction 2014-07-14 17:11:54 +02:00
Mikael Nordfeldth
9ce06f3e82 Adapt NewnoticeAction to latest Form- and ManagedAction 2014-07-06 13:10:22 +02:00
Mikael Nordfeldth
2e77cbfa86 FormAction updates, also fixing NoticeForm CSS 2014-07-03 14:01:12 +02:00
Mikael Nordfeldth
d596513e39 Stronger typing for NoticeListItem and so 2014-06-02 00:20:27 +02:00
Mikael Nordfeldth
78f9629bf3 Moved shareLocation preference check to Profile class 2013-10-06 13:38:09 +02:00
Mikael Nordfeldth
48da97f204 MediaFile code improvements, preparing to implement multi-attachments
Maybe in the future we can use this for anonymous file uploads too?
With some kind of anonymous/pseudonymous profile. That'd be neat.
2013-10-05 18:47:45 +02:00
Mikael Nordfeldth
64df40e409 Filling in missing endHTML calls for Action AJAX
This completes 1c6f9df80e where a lot
of other functions were fixed (by conforming to startHTML and endHTML)
2013-09-24 02:32:17 +02:00
Mikael Nordfeldth
1c6f9df80e PHP5.5 fix: Better use of startXML for Action classes (mostly AJAX)
I had a problem with PHP5.5 that caused ajax responses to be empty. This
fixes it, as the problem was related to pretty inconsistent calling to
headers, XMLWriter::startDocument etc. etc.
2013-09-24 01:18:33 +02:00
Mikael Nordfeldth
a9c4bcd71f Removing unnecessary require_once lines (autoload!) 2013-09-09 23:06:56 +02:00
Mikael Nordfeldth
c5bf6cb05e Using a bit more of $this->scoped (Action parent class)
$this->scoped is the currently active profile, which is intended
to replace the $user object in the long run...
2013-09-09 20:45:20 +02:00
Mikael Nordfeldth
f0e967fefd needLogin renamed checkLogin and made a property
Action extended classes now can set 'needLogin' as a protected property,
which is defaulted to 'false'. However, FormAction defaults this to 'true'
because most of the form actions will require a current login to be valid.

NewgroupAction, NewmessageAction, NewnoticeAction are all affected by this
commit and in the future we will migrate each potential formaction to the
proper class parent tree. :)
2013-09-02 11:58:47 +02:00
Mikael Nordfeldth
89b10666bb IMPORTANT: parent::handlePost() in NewnoticeAction
otherwise we don't do csrf checking etc...
2013-09-02 11:05:21 +02:00
Mikael Nordfeldth
0612e5ec87 NewnoticeAction converted to extend FormAction
There are still several improvements which can be made, such as not
having an entirely separate setup of ajax form functions. Instead
those should be implemented in FormAction. But at least now we got
rid of the redundant code use in prepare/handle.
2013-09-01 20:56:35 +02:00
Mikael Nordfeldth
2a4dc77a63 The overloaded DB_DataObject function staticGet is now called getKV
I used this hacky sed-command (run it from your GNU Social root, or change the first grep's path to where it actually lies) to do a rough fix on all ::staticGet calls and rename them to ::getKV

   sed -i -s -e '/DataObject::staticGet/I!s/::staticGet/::getKV/Ig' $(grep -R ::staticGet `pwd`/* | grep -v -e '^extlib' | grep -v DataObject:: |grep -v "function staticGet"|cut -d: -f1 |sort |uniq)

If you're applying this, remember to change the Managed_DataObject and Memcached_DataObject function definitions of staticGet to getKV!

This might of course take some getting used to, or modification fo StatusNet plugins, but the result is that all the static calls (to staticGet) are now properly made without breaking PHP Strict Standards. Standards are there to be followed (and they caused some very bad confusion when used with get_called_class)

Reasonably any plugin or code that tests for the definition of 'GNUSOCIAL' or similar will take this change into consideration.
2013-08-18 13:13:56 +02:00
Zach Copley
03de85ed46 Make it so input forms that don't have navigation don't accidentally get hidden. Add a "nonav" class to them. 2011-04-12 14:20:19 -07:00
Zach Copley
fcd863bba9 Theming - add some new markup to DM and new notice pages 2011-04-12 11:54:12 -07:00
Siebrand Mazeland
2dbdb0f185 Translator documentation updated/added.
i18n tweaks.
Superfluous whitespace removed.

YAY! All StatusNet core messages in the 1.0.x branch have been documented at this point in time!!!
2011-04-04 00:41:48 +02:00
Siebrand Mazeland
84a2fb44b9 Add/update translator documentation. 2011-04-04 00:12:52 +02:00
Siebrand Mazeland
9a6ee5e859 Update translator documentation. 2011-04-03 23:47:46 +02:00
Evan Prodromou
5147404ea2 ToSelector widget to send private notices
A new widget, ToSelector (Sorry, couldn't think of anything better)
that lets you select an addressee for a notice and whether it's
private.
2011-03-28 11:02:20 -04:00
Evan Prodromou
c7defb32f9 NoticeForm constructor takes array of optional parameters
NoticeForm::__construct() had 9 parameters, and I was about to add a
few more, so I figured it'd be better to use an $options array instead.
2011-03-27 11:25:24 -04:00
Siebrand Mazeland
a127ba78a8 * translator documentation updated.
* superfluous whitespace removed.
* small refactoring in noticeform.php to allow proper translator hints.
2011-03-05 00:24:19 +01:00
Siebrand Mazeland
b37e12ed34 * translator documntation updated
* superfluous whitespace remove
* minor L10n and i18n updates
2011-03-05 00:13:04 +01:00
Brion Vibber
9689bda21c Loading the original form instead of faking up our own. Sorta works but not pretty :D 2011-03-04 14:11:11 -08:00
Brion Vibber
aa96c3c1d9 Fix for tickets #2917, #2262: user URL shortening options not being applied in non-web channels
common_shorten_links() can only access the web session's logged-in user, so never properly took user options into effect for posting via XMPP, API, mail, etc.

Adds an optional $user parameter on common_shorten_links(), and a $user->shortenLinks() as a clearer interface for that.
Tweaked some lower-level functions so $user gets passed down -- making the $notice_id param previously there for saving URLs at notice save time generalized a little.

Note also ticket #2919: there's a lot of duplicate code calling the shortening, checking the length, and reporting near-identical error messages. These should be consolidated to aid in code and translation maintenance.
2010-12-02 13:41:56 -08:00
Siebrand Mazeland
6ab34fd8e8 * i18n/L10n updates.
* translator documentation added.
* superfluous whitespace removed.
2010-11-01 16:49:35 +01:00
Siebrand Mazeland
cb74822e7a i18n/L10n consistency updates. 2010-10-21 13:20:21 +02:00
Evan Prodromou
21bf50bad6 Merge branch 'noticetitle' into 0.9.x 2010-08-14 12:03:25 -07:00
Evan Prodromou
7dd46222a8 add StartNoticeSaveWeb and EndNoticeSaveWeb to hook web-based UI for notices 2010-08-13 11:21:07 -07:00