Shish
562a2c8fea
use microhtml for ext_manager
2019-12-09 14:20:56 +00:00
Shish
7f041a9f93
have fatal_error print out a bunch more info when run from CLI
2019-12-07 22:53:59 +00:00
Shish
d6fe059b67
stringer() function, because php lacks a good repr() D:
2019-12-07 22:51:28 +00:00
Shish
0806b2e5f0
Give Event a default toString
2019-12-07 22:49:02 +00:00
Shish
3e408c0f28
allow dashes in block IDs
2019-12-01 23:41:10 +00:00
Shish
30b85f58db
anon-ghost mode, and ghosts can't sign up for accounts
2019-11-28 21:32:18 +00:00
Shish
358f6d7abc
ghost bans
2019-11-28 17:20:23 +00:00
Shish
7bf60542df
script defer
2019-11-28 11:43:30 +00:00
Shish
a9993b47a8
working microcrud for ipbans
2019-11-27 21:06:14 +00:00
Shish
6b2304af93
format
2019-11-27 12:13:04 +00:00
Shish
861def1aa3
be explicit about using FFS-PHP's PDO not vanilla PDO
2019-11-26 10:26:38 +00:00
Shish
29994e9613
postgres now recommends IDENTITY over SERIAL
2019-11-25 00:24:45 +00:00
Shish
a175405210
replace ipban page with microcrud
2019-11-24 15:59:14 +00:00
Shish
c94f289291
html_escape all exception messages - pass query out-of-band if we want it formatted
2019-11-11 16:43:42 +00:00
Shish
6486bb95da
name_to_id
2019-11-11 16:43:42 +00:00
Shish
247cfcbd77
Avoid shadowing global variable
...
When we aren't referencing the current `global $user`, we should give it
a different name to avoid confusion
2019-11-11 16:43:42 +00:00
Shish
bde49c4f5e
paged ip bans
2019-11-11 12:52:11 +00:00
Shish
10b9e0ccbc
fix page number logic
2019-11-08 17:34:06 +00:00
Shish
f79eafc91e
format
2019-11-04 00:42:06 +00:00
Shish
d17e207984
Have get_arg never return null
...
90% of places assume it will never return null, and they will break in
weird ways if it does return null
2019-11-04 00:40:10 +00:00
Shish
494ba15a70
log every ext version change
2019-11-03 19:04:57 +00:00
Shish
0fa371c7b0
create tables before init
2019-11-03 18:32:50 +00:00
Shish
c58a13ae88
formatting
2019-11-03 18:28:38 +00:00
Shish
6bc33ee691
Drop SCORE_DATETIME/NOW - all the databases we care about now support TIMESTAMP/CURRENT_TIMESTAMP
2019-11-03 18:28:05 +00:00
Shish
031c441e47
split DatabaseUpgrade into a separate event from InitExt
2019-11-03 17:21:05 +00:00
Shish
ac5546c6ef
remove more old comments
2019-11-03 16:22:59 +00:00
Shish
55c6854003
formatting
2019-11-02 19:57:34 +00:00
Matthew Barbour
6b22f6da3f
Cleanup
2019-11-01 23:55:23 -05:00
Matthew Barbour
2b46ede098
approval permissions
2019-11-01 23:49:01 -05:00
Matthew Barbour
016fb6be65
Small fixes and corrections
2019-11-01 23:47:53 -05:00
Matthew Barbour
ed8caa86bf
Fix for random issue
2019-10-18 16:35:44 +01:00
Matthew Barbour
3efa76c6a2
Added set_timeout to database and engine
2019-10-18 16:34:12 +01:00
Matthew Barbour
d1853ee1db
Added scoreql option to database functions to make using scoreql less verbose
...
Added exists function to the database
2019-10-18 16:32:06 +01:00
Matthew Barbour
9139bbfd01
Added another lower() to a tag lookup
2019-10-18 16:31:38 +01:00
Matthew Barbour
3a14857b40
Consolidated tag sanitization functions
...
Added more tag convenience functions
2019-10-18 16:29:04 +01:00
Matthew Barbour
6b030c00eb
Constants for index config
2019-10-18 16:26:11 +01:00
Matthew Barbour
d605e0e572
Added cron_admin permission
2019-10-17 14:26:14 -05:00
Matthew Barbour
92a0afc15e
Supporting function for cron uploader changes
2019-10-10 10:41:17 -05:00
Shish
4564fd4092
by_id_or_hash for more elegant CLI use
2019-10-04 20:48:21 +01:00
Shish
71c74e034b
allow find_images without limit
2019-10-04 20:47:48 +01:00
Shish
cfa48deda1
consistent indent
2019-10-03 17:57:32 +01:00
Shish
30698fefdc
remove a bunch of dead variables and things
2019-10-02 11:23:57 +01:00
Shish
e08cdb1638
make Cache its own thing, separate from Database
2019-10-02 10:49:32 +01:00
Shish
486c048950
typo
2019-10-02 09:06:00 +01:00
Shish
704cab4470
type fixes
2019-10-02 09:03:14 +01:00
Shish
785e5b67e6
assert for type checking
2019-10-02 08:35:54 +01:00
Shish
6ccf7b72e2
int for port numbers
2019-10-02 00:39:45 +01:00
Shish
c197d021bb
Memcache hasn't been supported since php5 - we use Memcached now
2019-10-02 00:38:22 +01:00
Shish
f1c146b512
support set_int(foo, null)
2019-10-02 00:37:22 +01:00
Shish
08293bd32a
remove hack for ancient php bug
2019-10-01 11:07:38 +01:00
Shish
d7b08d7b95
bump required versions based on Debian Stable
2019-10-01 11:06:40 +01:00
Shish
5183c52223
version bump
2019-10-01 10:45:07 +01:00
Shish
cea6e2b121
postgres has true / false
2019-09-30 18:05:35 +01:00
Shish
19c4fcaf34
even with EMULATE_PREPARES=false, sqlite still returns strings for int columns...
2019-09-30 10:40:15 +01:00
Shish
fd2d434c61
return native types (int, float) for mysql
2019-09-30 10:19:47 +01:00
Shish
a7bddb1dac
get rid of is_admin, fixes #676
2019-09-29 19:01:09 +01:00
Shish
0f4a0275b5
use is_int instead of is_numeric if we want to reject numeric strings, should fix #681
2019-09-29 17:58:56 +01:00
Shish
54067f02a4
fix merge
2019-09-29 15:44:59 +01:00
Shish
e6a402cd4e
Merge branch 'custom_ratings' into develop
2019-09-29 14:41:14 +01:00
Shish
f5119b20a3
formatting
2019-09-29 14:32:51 +01:00
Shish
a6bb15d859
formatting
2019-09-29 14:30:55 +01:00
matthew
cf8ed3b134
Added UserLoginEvent
2019-09-29 14:21:23 +01:00
Matthew Barbour
73b784266e
Moved user config stuff into an extension
2019-09-29 14:20:40 +01:00
matthew
120cdb49a6
Added $user_config global based on existing config object for storing user-specific settings.
...
Added event to the user page so that extensions can hook into it, providing user-specific setting controls
2019-09-29 14:19:52 +01:00
Matthew Barbour
88e6e68d79
Changed omitted related tags (like tagme) to be powered by a setting, allowing any performance-impacting (or just not useful in this context) tags to be omitted
...
Further tag list performance improvements
TagListConfig constants
2019-09-26 15:46:28 +01:00
Shish
33fff87f39
Merge pull request #680 from sanmadjack/ext_info
...
Proposed extension info change to allow getting info for unloaded ext…
2019-09-26 15:37:16 +01:00
Daniel Oaks
a1c276c840
Fix SQLite underscore searching ( #619 )
2019-09-14 13:46:39 +10:00
Shish
9341c408b9
allow randomness to be limited, because sql's OFFSET N is O(n)
2019-09-08 17:13:20 +01:00
Matthew Barbour
ac6ded877f
Added dependency support for extensions
...
Separated a few extensions that had multiple extension classes in the same file
2019-08-07 16:32:44 -05:00
Matthew Barbour
f4b647b6b8
Updated util for new extension methods
2019-08-07 15:59:06 -05:00
Matthew Barbour
91b46d6598
Moved user config stuff into an extension
2019-08-07 15:49:56 -05:00
Matthew Barbour
68ee4d0e77
Custom rating support, user rating filter settings
2019-08-07 15:49:26 -05:00
Matthew Barbour
8f0aa8a4ca
Added $user_config global based on existing config object for storing user-specific settings.
...
Added event to the user page so that extensions can hook into it, providing user-specific setting controls
2019-08-07 15:48:18 -05:00
Matthew Barbour
de98e86938
ExtensionInfo conversions what have I done
2019-08-07 15:40:01 -05:00
Matthew Barbour
3d1b964812
Proposed extension info change to allow getting info for unloaded extensions
2019-08-07 15:34:11 -05:00
Matthew Barbour
a18589ee0a
Help extension
...
Provides foundation for help pages that are generated from loaded extensions, starting with comprehensive search documentation. Addresses #522
2019-08-05 09:03:49 -05:00
Matthew Barbour
00464d2579
Implemented a nav link generating system so that extension power what shows up in the menus rather than being hard-coded in the themes.
2019-08-05 09:01:20 -05:00
Matthew Barbour
972b68bdd3
Setup constants
2019-08-05 09:00:23 -05:00
Matthew Barbour
fc294bfb3c
add tracer_enabled check to the database class to prevent unnecessary memory build-up when tracer isn't outputting.
...
Globalized tracer_enabled to make it easier to access
2019-08-01 08:15:43 -05:00
Matthew Barbour
c3f2d2e1bd
New post titles extension, resolves #19
2019-08-01 08:10:24 -05:00
Matthew Barbour
45df025e7d
Bulk action permission constant
2019-08-01 08:09:00 -05:00
Matthew Barbour
cb1e9c0075
Permissions to constants
2019-08-01 08:07:05 -05:00
Shish
d57b624079
Merge commit '38cc05c' into develop
2019-07-31 14:58:24 +01:00
Shish
a0b1c82d0d
function to clear event listeners
2019-07-19 10:25:07 +01:00
Shish
c5aba18470
s/is_admin/can(perform_bulk_actions)/
2019-07-08 20:35:10 +01:00
Matthew Barbour
a0c0b6e3d1
Various fixes
2019-07-08 08:07:11 -05:00
Matthew Barbour
b1db833d51
Added additional media properties to the images table, video, audio, length, and lossless.
...
Added new event to handle fetching media properties like height, width, and the newly added fields, and admin controls to manually scan files for their properties.
Added a search terms content:video and content:audio to search for images that do (or do not) have those flags.
2019-07-08 08:07:09 -05:00
Matthew Barbour
a41e99d1af
Renamed graphics extension to media extension
2019-07-08 08:07:08 -05:00
Matthew Barbour
3859e27839
New Graphics extension
...
Added constants to several extensions
2019-07-08 08:07:02 -05:00
Shish
eb885c443c
trim leading whitespace when logging queries
2019-07-07 19:22:44 +01:00
Shish
1bd7e1a547
better DISABLE_ACCEL
2019-07-07 17:40:24 +01:00
Shish
cf98e4bf43
remove one-positive-tag special case which is slower than the generic build_accurate_search_querylet
2019-07-07 17:13:56 +01:00
Shish
ea802f4a24
Remove build_ugly_search_querylet
...
now that the accurate search doesn't use subqueries, perhaps mysql can
accept it
2019-07-07 16:50:55 +01:00
Shish
bd5ccd2800
remove ancient misleading description of the search code
2019-07-07 16:46:56 +01:00
Shish
98f0375e94
make tracer not-null in installer
2019-07-07 15:57:06 +01:00
Shish
660ee2b249
make composer libs usable from the installer
2019-07-07 15:50:02 +01:00
Shish
b43ad07abe
typo
2019-07-07 15:42:19 +01:00
Shish
1e1ede7db6
log which method was used to wrap db->execute
2019-07-07 15:12:51 +01:00
Shish
3c6b09110a
Cache multiple flexihashes
...
otherwise get_thumb / get_image / get_thumb / get_image / ... will
have 100% cache miss rate
2019-07-07 14:26:45 +01:00
Shish
8ec3690f8e
cache logging was getting hit/miss the wrong way round... forever?
2019-07-07 14:07:11 +01:00
Shish
c8563951ce
tracing instead of cache debug log
2019-07-07 13:58:39 +01:00
Shish
bca74a0db5
drop DEBUG_SQL - all of that info is included in the trace file, fixes #674
2019-07-07 13:52:53 +01:00
Shish
4cadce1de0
merge slow-page-log into tracer, fixes #673
2019-07-07 13:51:19 +01:00
Shish
99646a4b00
bump tracer api
2019-07-07 13:30:50 +01:00
Matthew Barbour
f5a5352511
Correction to negative tag code
2019-07-07 11:17:21 +01:00
matthew
c906df6956
Added iterator_map and iterator_map_to_array
...
Moved the path join/sanitize to pollyfills
2019-07-07 11:11:57 +01:00
Shish
3954f3d296
merge iterable queries with new count_time
2019-07-07 11:11:27 +01:00
matthew
d64603674e
Added ability to use generators with database queries.
...
Adapted bulk actions to use generators.
2019-07-07 11:10:40 +01:00
Matthew Barbour
183f9bb897
Changed the image tag search query to run more efficiently on pgsql
2019-07-07 11:06:45 +01:00
Shish
b01f425a55
GET flag to skip cache
2019-07-07 10:29:00 +01:00
Shish
f4a98e7a9b
GET flag to skip accelerator
2019-07-07 10:29:00 +01:00
Shish
68f3ebb2c6
Consistently say '<Type> Query'
2019-07-07 00:17:39 +01:00
Shish
b285acf70a
tracer-complete needs start time
2019-07-06 23:01:22 +01:00
Shish
8ea78eed6a
have database performance measured in three ways at once, instead of three separate ways
2019-07-06 21:41:48 +01:00
Shish
c682670f64
derp
2019-07-06 10:38:18 +01:00
Shish
ccb9c493d5
s/Context/EventTracer/g
2019-07-05 20:49:47 +01:00
Shish
f0326dc3ab
bootstrap as its own phase
2019-07-05 19:20:37 +01:00
Matthew Barbour
a82fb56063
Added force flag to image deletion event to override trash extension
2019-07-05 18:31:31 +01:00
matthew
1bd9238b17
Additional trash stuff
2019-07-05 18:29:45 +01:00
Matthew Barbour
32d37254f7
New trash extension. For undelete-type stuff.
2019-07-05 18:29:44 +01:00
Matthew Barbour
92bb96049f
Added SCORE sql constants
2019-07-05 17:41:29 +01:00
matthew
639c896a16
Added join_path to cleanly join paths.
...
Added sanitize_path to normalize and deduplicate directory separators.
Changed warehouse_path to be able to scale up the number of octect pairs as much as desired.
2019-07-05 16:43:06 +01:00
Matthew Barbour
aa9ce52f47
Adjustment to DATABASE_TIMEOUT
2019-07-05 16:25:03 +01:00
Matthew Barbour
3fc0ba3a63
Added DATBASE_TIMEOUT constant to allow customizing database wait time
2019-07-05 16:25:03 +01:00
Matthew Barbour
6a6d73168b
Added function to database object for interpreting parameter values to ones that are database-appropriate. Specifically, to turn true/false into the correct values for a bool column.
2019-07-05 16:25:03 +01:00
Matthew Barbour
af263bc2a5
Fix the flv mime type mapping
2019-07-05 16:25:03 +01:00
Matthew Barbour
de6d6a0515
Added new FILE page mode that allows sending files to the browser with these improvements:
...
Reads the file and outputs it in chunks rather than all at once, reducing the amount of memory needed to very little, even for very very large files.
Supports http request ranges so that only parts of the file will be returned if requested. This allows in-browser video players to seek to arbitrary points in the video without needing to download the whole file.
Makes use of flush during send to allow the browser to being receiving file data immediately, allowing streamable video formats to begin playing before the server has finished sending the data. This could also be used in the future to add a transmission rate limiter.
Has early-disconnect detection, to terminate sending file data if the client browser has disconnected or aborted (for instance, a user starts a video, then seeks to near the middle, the first request of data will be terminated rather than continuing to process the file).
2019-07-05 16:25:03 +01:00
Shish
c24a6e9b97
formatting pass
2019-06-21 09:12:44 +01:00
Shish
42a502953b
Merge pull request #663 from sanmadjack/bugfixes
...
Bugfixes and small changes
2019-06-21 09:11:52 +01:00
Matthew Barbour
1370afec72
Moved database driver constants to DatabaseDriver
2019-06-20 10:47:15 -05:00
Matthew Barbour
a2ac9776ff
path tag corrections
2019-06-19 23:28:34 -05:00
Matthew Barbour
c951f7d13e
Adjusted path-to-dir regex to prevent an error
2019-06-19 20:22:41 -05:00
matthew
27574cad76
Merge remote-tracking branch 'upstream/develop' into path_to_tags_enhancements
2019-06-19 20:21:47 -05:00
Matthew Barbour
5eb4a66ab7
Added merged indicator to DataUploadEvent and ImageAddEvent
...
Changed merge process so that the ID of the merged image can make it back through the event chanin
2019-06-19 20:19:38 -05:00
Matthew Barbour
826c623538
PageMode constants
2019-06-18 21:04:31 -05:00
matthew
123089bfbf
Merge remote-tracking branch 'upstream/develop' into bugfixes
...
# Conflicts:
# core/imageboard/image.php
2019-06-18 13:31:04 -05:00
Shish
1d10baa719
only sql-escape if we're going to the database, not the accelerator
2019-06-16 19:25:40 +01:00
Shish
6df1190501
Rename Tag/ImgQuerylet to Tag/ImgCondition
...
It was confusing because Tag/ImgQuerylet (an abstract condition to use
as part of image search filtering) were unrelated to Querylet (a
fragment of SQL)
2019-06-16 19:11:16 +01:00
Shish
6b9d18b52e
Parse tags first, then check accelerator, then check database
...
Better than half-assed tag parsing in the accelerator then full parsing
in the database
2019-06-16 19:07:55 +01:00
Matthew Barbour
37fe743f65
Changed "images" and "thumbs" usages to constants
2019-06-15 11:20:11 -05:00
Matthew Barbour
4ade0090cc
Added float support to config
2019-06-15 11:20:01 -05:00
Matthew Barbour
6f501a6e74
Database driver constants
2019-06-14 13:38:47 -05:00
Matthew Barbour
58acb71282
Change imagemagick commands to return the error output
...
Added ico to transcode extension
2019-06-14 13:01:24 -05:00
Matthew Barbour
ed4b6bc4a0
Updated handle_ico to use new common image thumbnailing and to inherit DataHandlerExtension
2019-06-14 13:00:59 -05:00
Matthew Barbour
85b6bba689
Changed path_to_tags to interpret ; as : and to allow inheriting categories from parent folders
2019-06-14 09:50:23 -05:00
Matthew Barbour
1b76366dd9
Cleaned up some of the new image processing code, added documentation
2019-06-14 09:41:55 -05:00
Shish
064b24ffc1
formatting pass
2019-06-14 13:47:50 +01:00
Shish
d1102cd635
Merge from sanmadjack:develop
2019-06-14 13:46:55 +01:00
Shish
f078b283bd
pull a bunch of small fixes from #659
2019-06-14 13:16:58 +01:00
Matthew Barbour
5765978afd
Changed to prevent writing duplicate image tag IDs
2019-06-14 12:52:58 +01:00