Skip to content

Instantly share code, notes, and snippets.

View muskie9's full-sized avatar

Nic muskie9

View GitHub Profile
<?php
namespace My\Custom\Namespace;
class MyAdmin extends ModelAdmin
{
private static $managed_models = [
'myModelKey' => [
'dataClass' => MyClass::class,
'title' => 'My Class Title',
<?php
$groupings = [
[
'Title' => 'Hoodies',
'Class' => 'hoodies',
'Items' => [
[
'Href' => 'foo.php',
'Image' => 'img/myimage.jpg',
<?php
$albumData = [
[
'Title' => 'Album 1 Title',
'Image' => 'img/foo-bar.jpg',
],
[
'Title' => 'Album 2 Title',
'Image' => 'img/foo-bar-2.jpg',
@muskie9
muskie9 / SortByFilteredRelation.php
Created May 6, 2020 03:36
Sorting object by summation of related objects that are filtered
<?php
class Foo extends DataObject
{
private static $has_many = [
'Bars' => Bar::class,
];
}
class Bar extends DataObject
<?php
namespace MyApp\Extension;
use MyApp\Model\Reservation;
use SilverStripe\Control\Controller;
use SilverStripe\Control\HTTPResponse;
use SilverStripe\Core\Extension;
use SilverStripe\Forms\FieldList;
use SilverStripe\Forms\FormAction;
<?php
/** DataList $myList */
$myList = Something::get();
$withinRangeFilter = new WithinRangeFilter('ColumnName');//in this case I had a Date column
$withinRangeFilter->setMin('YYYY-MM-DD');//low end date
$withinRangeFilter->setMax('YYYY-MM-DD');//high end date
$myList = $myList->alterDataQuery([$withinRangeFitler, 'apply']);
<?php
namespace Your\Namespace;
use SilverStripe\Core\Config\Configurable;
use SilverStripe\ORM\DB;
/**
* Class ConnectionManager
* @package Your\Namespace
<?php
/**
* Action that takes the user back to a given link rather than submitting
* the form.
*
* @package cancelformaction
*/
class CancelFormAction extends FormAction
{
<?php
namespace Foo\Bar\Baz\Tasks;
use SilverStripe\Assets\File;
use SilverStripe\Core\ClassInfo;
use SilverStripe\Dev\BuildTask;
use SilverStripe\Dev\Debug;
use SilverStripe\ORM\DataObject;
use SilverStripe\ORM\DB;
<?php
namespace Foo\Bar\Baz;
use SilverStripe\Dev\BuildTask;
use SilverStripe\ORM\DB;
/**
* Class CountryCodeUpdateTask
* @package Dynamic\Jasna\Tasks