Mikael Nordfeldth
1e6520fddd
Woops, forgot to skip the / in path
2016-02-26 14:13:46 +01:00
Mikael Nordfeldth
6a4470912f
Fiddling with merge request #98 to use internal routing functions
2016-02-26 14:10:32 +01:00
Mikael Nordfeldth
8356c2495c
Use mb_* and strict === comparison
2016-02-26 13:52:25 +01:00
mmn
722ff4d9c0
Merge branch 'foolproof_file_redirection_branch' into 'nightly'
...
Foolproof file redirection
This solves an issue when our internal /attachment/{file_id} links are shortened with an remote shorteners (which caused the /attachment/{file_id} links to be saved to the File table and a thumbnail of a thumbnail being generated)
See merge request !98
2016-02-26 12:49:10 +00:00
Mikael Nordfeldth
aeb2e282db
Commented on the mime extension matching regexp
2016-02-25 22:32:54 +01:00
Mikael Nordfeldth
bac37d1714
syntax error
2016-02-25 22:17:44 +01:00
Mikael Nordfeldth
e6e1705852
Make uploads work properly if we accept _all_ attachment types
...
Also introduced $config['attachments']['extblacklist'] that can disable
certain file extensions (or rewrite them, for example php => phps)
2016-02-25 22:15:54 +01:00
Mikael Nordfeldth
733debd9b3
Use thumbnail upscaling config value
2016-02-10 04:40:54 +01:00
Mikael Nordfeldth
40cffb9463
File::isProtected is static
2016-02-03 00:22:18 +01:00
hannes
f708a5b016
Never save our /attachment/{file_id} links as links in the file table, return the old file
2016-01-29 00:36:30 +00:00
hannes
a888294135
add our own protected urls
2016-01-25 19:00:46 +00:00
hannes
ca0c792ed3
File and File_redirection records are saved in File_redirection::where() now
2016-01-25 19:00:05 +00:00
Mikael Nordfeldth
fdfa71a033
Extremely verbose debugging is annoying
2016-01-16 18:04:04 +01:00
Mikael Nordfeldth
0caf0612d0
Make Twitter Media upload API v1.1 reach us
...
Now we just have to accept the 'media' or 'media_data' (base64 encoded)
POST arguments instead of $_FILES uploads.
2016-01-14 18:29:21 +01:00
Mikael Nordfeldth
b696fb4eb1
Mimetypes like image/svg+xml were misinterpreted when guessing
...
We don't really need the mb_ in mb_strtolower but what the heck, why not. I love Unicode.
2016-01-12 13:46:25 +01:00
Mikael Nordfeldth
d4be5349b3
think I have managed to show oEmbed images better now
2016-01-07 17:35:37 +01:00
Mikael Nordfeldth
f1c4c64cd9
Don't update stored URLs just because we have a filename
...
This would overwrite remote URLs with local verisons which removes source href...
The reason one might have filenames for remote URLs is that StoreRemoteMedia plugin
fetches them and uses the filename field.
2016-01-06 19:24:03 +01:00
Mikael Nordfeldth
346e34e543
Return dynamically generated URLs for thumbnails for all locally stored entries
2016-01-06 19:06:29 +01:00
hannes
08be0e5c67
fixes this issue: https://quitter.se/notice/4344600
2015-12-30 01:54:48 +00:00
Mikael Nordfeldth
12d77ac3e4
varchar to text since there's no reason to limit the fields
...
They caused problems when quitter.se was upgrading because someone was
named ryanjjjjjjjjjjjjjjjjjjj[and more than 191 'j's] etc.
2015-12-27 11:50:11 +01:00
Stephen Paul Weber
a9b1b60a97
Refactor on File::processNew
...
The code was so involved there was even a comment asking for a refactor.
Now, File_redirection::where always returns a nice File_redirection
object instead of an array or string or nothing. The object is
either one which already existed or else a new, unsaved object.
Instead of duplicating "does it exist" checks everywhere, do it in
File_redirection::where. You either get what exists or something to save.
An unsaved File_redirection may be paired with an unsaved File.
You will want to save the File first (using ->saveFile()) and put the
id in File_redirection#file_id before saving.
2015-11-02 05:15:08 +00:00
Mikael Nordfeldth
80bc7f0e25
File handling changes for better logic
...
Also prepares for StoreRemoteMediaPlugin, coming up...
2015-10-01 22:14:49 +02:00
Mikael Nordfeldth
edb73ec480
Use exception instead of if-statement in File::saveNew
2015-09-27 12:29:38 +02:00
Mikael Nordfeldth
02418cffd8
Be harsher on database saving failure for File entry
2015-09-27 11:54:52 +02:00
Mikael Nordfeldth
daaafd86e2
DB_DataObject recommends using ->tableName()
2015-06-06 19:35:10 +02:00
Mikael Nordfeldth
fe6498e7c8
Send objects instead of integers to File_to_post::processNew
2015-06-04 17:36:11 +02:00
Mikael Nordfeldth
5358fb3cce
Use the same cache string in all places for file:notice-ids
2015-06-04 17:02:45 +02:00
Mikael Nordfeldth
3294d704a4
scripts/nukefile.php for blasting crap from the server
...
Deletes notices and the locally stored file based on File id, as
you may want to just get rid of shit sometimes.
2015-05-30 15:41:04 +02:00
Mikael Nordfeldth
f926e27a65
urlhash will _be_ NULL on update, so NOT NULL won't work
2015-05-27 22:37:20 +02:00
Mikael Nordfeldth
c31d6608a8
remove _all_ file URLs not just the duplicates
2015-05-27 21:54:51 +02:00
Mikael Nordfeldth
cd0b70dbc1
upgrade fix for file URLs longer than 191 chars
2015-05-27 21:31:29 +02:00
Mikael Nordfeldth
c5715bc756
File_to_post indexing and cleaning preparations
2015-04-15 23:25:12 +02:00
Mikael Nordfeldth
a4af51b5ba
Move thumbnail algorithm mainly to ImageFile class
2015-03-04 13:12:42 +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
Mikael Nordfeldth
7e6ba94241
Documentation + filename uniqueness in File class
2015-02-25 15:19:27 +01:00
Mikael Nordfeldth
9a843548c0
Save thumbnails with proper extension
...
This might cause double extensions, but that's ok since the filename
is stored in the database. We might want to look at it later though.
2015-02-25 01:34:00 +01:00
Mikael Nordfeldth
325e784ccd
Don't store duplicates of files.
...
If a new file is uploaded, it will be matched with a previously uploaded
file so we don't have to store duplicates. SHA256 is random enough and
also unlikely enough to cause collisions.
2015-02-24 21:11:25 +01:00
Mikael Nordfeldth
0e6c83e521
Had to avoid using indexes in the migration phase
...
File and File_redirection still had their indexes in the temporary migration table definition.
2015-02-19 22:06:43 +01:00
Mikael Nordfeldth
b54710950f
unique keys and indexes must be NOT NULL or MySQL fucks up
...
If this merge throws exception on scripts/upgrade.php and you recently
tried a nightly (i.e. during 2015-02-19) then just go back a commit or two
and try again.
Or delete the duplicate entries. Find the entries like this:
SELECT COUNT(*), urlhash FROM file_redirection
GROUP BY urlhash
HAVING COUNT(*) > 1;
then for each urlhash (or come up with a smart SQL query) do:
DELETE FROM file_redirection WHERE urlhash='hashfrompreviousquery' LIMIT 1;
You'll have to remove duplicates more than once if you have >2 identical
urlhash entries. LIMIT -1 might do that for you. I'm not sure.
2015-02-19 21:21:39 +01:00
Mikael Nordfeldth
0590f2975e
Merge branch 'utf8mb4' into nightly
...
Conflicts because of urlhash fixes:
classes/File.php
classes/File_redirection.php
classes/File_thumbnail.php
2015-02-19 20:50:40 +01:00
Mikael Nordfeldth
5471c65c9a
less newlines for the scripts/upgrade.php output
2015-02-19 19:40:36 +01:00
Mikael Nordfeldth
e299583eee
Bad check on existing urlhash key
2015-02-19 19:36:59 +01:00
Mikael Nordfeldth
8ac8e2e734
Use new ::getByUrl for File and File_redirection
...
and make use of the exceptions instead endless if statements
2015-02-19 19:29:55 +01:00
Mikael Nordfeldth
c05e9b118c
function is hashurl, variable is urlhash
2015-02-19 19:07:43 +01:00
Mikael Nordfeldth
45dc76de26
File and File_redirection adhoc storage methods updated for urlhash
2015-02-19 19:05:24 +01:00
Mikael Nordfeldth
27480d8e8e
File_redirection also got urlhash column
2015-02-19 18:34:48 +01:00
Mikael Nordfeldth
5a8f24eb46
urlhash first steps, including scripts/upgrade.php
2015-02-17 18:55:12 +01:00
Mikael Nordfeldth
2f86cd8602
utf8mb4 conversion on database with index adjusts
2015-02-12 18:18:55 +01:00
Mikael Nordfeldth
67d09532dd
Improved animated image thumbnail freedom of choice
...
Default is now to take still thumbnails of animated GIFs and then
show them as originals in an AttachmentListItem. The still frames
are mostly used with front-ends like qvitter.
2015-01-26 16:33:39 +01:00
Mikael Nordfeldth
a8e613e508
Animated GIF restructuring, ImageMagick only used for resizing animated sequences.
2015-01-25 23:00:00 +01:00