mirror of
https://code.castopod.org/adaures/castopod.git
synced 2024-09-10 12:39:38 +02:00
- add "ActivityPub" library to handle server to server federation and basic client to server protocols using activitypub: - add webfinger endpoint to look for actor - add actor definition with inbox / outbox / followers - remote follow an actor - create notes with possible preview cards - interract with favourites, reblogs and replies - block incoming actors and/or domains - broadcast/schedule activities to fediverse followers using a cron task - For castopod, the podcast is the actor: - overwrite the activitypub library for castopod's specific needs - perform basic interactions administrating a podcast to interact with fediverse users: - create notes with episode attachment - favourite and share a note + reply - add specific castopod_namespaces for podcasts and episodes definitions - overwrite CodeIgniter's Route service to include alternate-content option for activitystream requests - update episode publication logic: - remove publication inputs in create / edit episode form - publish / schedule or unpublish an episode after creation - the podcaster publishes a note when publishing an episode - Javascript / Typescript modules: - fix Dropdown.ts to keep dropdown menu in foreground - add Modal.ts for funding links modal - add Toggler.ts to toggle various css states in ui - User Interface: - update tailwindcss to v2 - use castopod's pine and rose colors - update public layout to a 3 column layout - add pages in public for podcast activity, episode list and notes - update episode page to include linked notes - remove previous and next episodes from episode pages - show different public views depending on whether user is authenticated or not - use Kumbh Sans and Montserrat fonts - update CodeIgniter's config files - with CodeIgniter's new requirements, update docker environments are now based on php v7.3 image - move Image entity to Libraries - update composer and npm packages to latest versions closes #69 #65 #85, fixes #51 #91 #92 #88
153 lines
5.1 KiB
PHP
153 lines
5.1 KiB
PHP
<?php
|
|
|
|
namespace Config;
|
|
|
|
use CodeIgniter\Cache\Handlers\DummyHandler;
|
|
use CodeIgniter\Cache\Handlers\FileHandler;
|
|
use CodeIgniter\Cache\Handlers\MemcachedHandler;
|
|
use CodeIgniter\Cache\Handlers\PredisHandler;
|
|
use CodeIgniter\Cache\Handlers\RedisHandler;
|
|
use CodeIgniter\Cache\Handlers\WincacheHandler;
|
|
use CodeIgniter\Config\BaseConfig;
|
|
|
|
class Cache extends BaseConfig
|
|
{
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Primary Handler
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* The name of the preferred handler that should be used. If for some reason
|
|
* it is not available, the $backupHandler will be used in its place.
|
|
*
|
|
* @var string
|
|
*/
|
|
public $handler = 'file';
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Backup Handler
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* The name of the handler that will be used in case the first one is
|
|
* unreachable. Often, 'file' is used here since the filesystem is
|
|
* always available, though that's not always practical for the app.
|
|
*
|
|
* @var string
|
|
*/
|
|
public $backupHandler = 'dummy';
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Cache Directory Path
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* The path to where cache files should be stored, if using a file-based
|
|
* system.
|
|
*
|
|
* @var string
|
|
*
|
|
* @deprecated Use the driver-specific variant under $file
|
|
*/
|
|
public $storePath = WRITEPATH . 'cache/';
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Cache Include Query String
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* Whether to take the URL query string into consideration when generating
|
|
* output cache files. Valid options are:
|
|
*
|
|
* false = Disabled
|
|
* true = Enabled, take all query parameters into account.
|
|
* Please be aware that this may result in numerous cache
|
|
* files generated for the same page over and over again.
|
|
* array('q') = Enabled, but only take into account the specified list
|
|
* of query parameters.
|
|
*
|
|
* @var boolean|string[]
|
|
*/
|
|
public $cacheQueryString = false;
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Key Prefix
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* This string is added to all cache item names to help avoid collisions
|
|
* if you run multiple applications with the same cache engine.
|
|
*
|
|
* @var string
|
|
*/
|
|
public $prefix = '';
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* File settings
|
|
* --------------------------------------------------------------------------
|
|
* Your file storage preferences can be specified below, if you are using
|
|
* the File driver.
|
|
*
|
|
* @var array<string, string|int|null>
|
|
*/
|
|
public $file = [
|
|
'storePath' => WRITEPATH . 'cache/',
|
|
'mode' => 0640,
|
|
];
|
|
|
|
/**
|
|
* -------------------------------------------------------------------------
|
|
* Memcached settings
|
|
* -------------------------------------------------------------------------
|
|
* Your Memcached servers can be specified below, if you are using
|
|
* the Memcached drivers.
|
|
*
|
|
* @see https://codeigniter.com/user_guide/libraries/caching.html#memcached
|
|
*
|
|
* @var array<string, string|int|boolean>
|
|
*/
|
|
public $memcached = [
|
|
'host' => '127.0.0.1',
|
|
'port' => 11211,
|
|
'weight' => 1,
|
|
'raw' => false,
|
|
];
|
|
|
|
/**
|
|
* -------------------------------------------------------------------------
|
|
* Redis settings
|
|
* -------------------------------------------------------------------------
|
|
* Your Redis server can be specified below, if you are using
|
|
* the Redis or Predis drivers.
|
|
*
|
|
* @var array<string, string|int|null>
|
|
*/
|
|
public $redis = [
|
|
'host' => '127.0.0.1',
|
|
'password' => null,
|
|
'port' => 6379,
|
|
'timeout' => 0,
|
|
'database' => 0,
|
|
];
|
|
|
|
/**
|
|
* --------------------------------------------------------------------------
|
|
* Available Cache Handlers
|
|
* --------------------------------------------------------------------------
|
|
*
|
|
* This is an array of cache engine alias' and class names. Only engines
|
|
* that are listed here are allowed to be used.
|
|
*
|
|
* @var array<string, string>
|
|
*/
|
|
public $validHandlers = [
|
|
'dummy' => DummyHandler::class,
|
|
'file' => FileHandler::class,
|
|
'memcached' => MemcachedHandler::class,
|
|
'predis' => PredisHandler::class,
|
|
'redis' => RedisHandler::class,
|
|
'wincache' => WincacheHandler::class,
|
|
];
|
|
}
|