Version 5.0.13
This commit is contained in:
1 parent
b89858b2ff
commit
5efe744c5f
1407 files changed
+69690
-30177
No files matched your search
+15
-55
@@ -229,7 +229,7 @@ abstract class Widget
|
||||
*/
|
||||
public function init(): void
|
||||
{
|
||||
if ( $this->app )
|
||||
if ( $this->app and $this->template === null )
|
||||
{
|
||||
$this->template( array( Theme::i()->getTemplate( 'widgets', $this->app, 'front' ), $this->key ) );
|
||||
}
|
||||
@@ -299,6 +299,19 @@ abstract class Widget
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Can this widget be used on this page?
|
||||
*
|
||||
* @param string $app
|
||||
* @param string $module
|
||||
* @param string $controller
|
||||
* @return bool
|
||||
*/
|
||||
public function isExecutableByPage( string $app, string $module, string $controller ) : bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch the application for this widget
|
||||
*
|
||||
@@ -833,7 +846,6 @@ abstract class Widget
|
||||
'dev_widget_key' => Request::i()->key,
|
||||
'dev_widget_class' => $widgets[ Request::i()->key ]['class'],
|
||||
'dev_widget_restrict' => $widgets[ Request::i()->key ]['restrict'],
|
||||
'dev_widget_default_area' => isset($widgets[ Request::i()->key ]['default_area']) ? $widgets[ Request::i()->key ]['default_area'] : NULL,
|
||||
'dev_widget_allow_reuse' => isset($widgets[ Request::i()->key ]['allow_reuse']) ? $widgets[ Request::i()->key ]['allow_reuse'] : 0,
|
||||
'dev_widget_menu_style' => isset($widgets[ Request::i()->key ]['menu_style']) ? $widgets[ Request::i()->key ]['menu_style'] : 'menu',
|
||||
'dev_widget_layouts' => $widgets[ Request::i()->key ]['layouts'] ?? implode( ",", $layouts ),
|
||||
@@ -881,16 +893,6 @@ abstract class Widget
|
||||
),
|
||||
'multiple' => true ) ) );
|
||||
|
||||
$form->add( new Radio( 'dev_widget_default_area', ( is_array( $current ) ? ( $current['dev_widget_default_area'] ?: 'none' ) : 'none' ), FALSE, array(
|
||||
'options' => array(
|
||||
'none' => Member::loggedIn()->language()->addToStack('none'),
|
||||
'sidebar' => Member::loggedIn()->language()->addToStack('dev_widget_default_area_sidebar'),
|
||||
'header' => Member::loggedIn()->language()->addToStack('dev_widget_default_area_header'),
|
||||
'footer' => Member::loggedIn()->language()->addToStack('dev_widget_default_area_footer'),
|
||||
|
||||
),
|
||||
'multiple' => false ) ) );
|
||||
|
||||
$form->add( new Radio( 'dev_widget_menu_style', ( is_array( $current ) ? $current['dev_widget_menu_style'] : 'menu' ), FALSE, array(
|
||||
'options' => array(
|
||||
'menu' => Member::loggedIn()->language()->addToStack('dev_widget_menu_style_menu'),
|
||||
@@ -963,7 +965,6 @@ abstract class Widget
|
||||
'key' => $values['dev_widget_key'],
|
||||
'class' => $values['dev_widget_class'],
|
||||
'restrict' => ( ! count( $values['dev_widget_restrict'] ) ? FALSE : json_encode( array_values( $values['dev_widget_restrict'] ) ) ),
|
||||
'default_area' => ( $values['dev_widget_default_area'] === 'none' ) ? '' : $values['dev_widget_default_area'],
|
||||
'allow_reuse' => $values['dev_widget_allow_reuse'],
|
||||
'menu_style' => $values['dev_widget_menu_style'],
|
||||
'layouts' => $values['dev_widget_layouts'],
|
||||
@@ -979,7 +980,6 @@ abstract class Widget
|
||||
$widgets[ $values['dev_widget_key'] ] = array(
|
||||
'class' => $values['dev_widget_class'],
|
||||
'restrict' => ( ! count( $values['dev_widget_restrict'] ) ? FALSE : array_values( $values['dev_widget_restrict'] ) ),
|
||||
'default_area' => ( $values['dev_widget_default_area'] === 'none' ) ? '' : $values['dev_widget_default_area'],
|
||||
'allow_reuse' => $values['dev_widget_allow_reuse'],
|
||||
'menu_style' => $values['dev_widget_menu_style'],
|
||||
'layouts' => $values['dev_widget_layouts'],
|
||||
@@ -1024,9 +1024,7 @@ abstract class Widget
|
||||
$data[ $k ] = array(
|
||||
'dev_widget_key' => $k,
|
||||
'dev_widget_class' => $json['class'],
|
||||
'dev_widget_restrict' => $json['restrict'] === FALSE ? Member::loggedIn()->language()->addToStack('dev_widget_nowhere') : ( ( ( count( $json['restrict'] ) > 0 and count( $json['restrict'] ) !== 2 ) ? implode( ',', array_map( function($val ) { return Member::loggedIn()->language()->addToStack('dev_widget_restrict_'.$val); }, $json['restrict'] ) ) : Member::loggedIn()->language()->addToStack('everywhere') ) ),
|
||||
'dev_widget_area' => isset($json['default_area']) ? ( $json['default_area'] ? Member::loggedIn()->language()->addToStack( 'dev_widget_default_area_' . $json['default_area'] ) : Member::loggedIn()->language()->addToStack('none') ) : 'sidebar',
|
||||
'dev_widget_embeddable' => isset($json['embeddable']) ? ( $json['embeddable'] ? '✓' : '✗' ) : '✗'
|
||||
'dev_widget_restrict' => $json['restrict'] === FALSE ? Member::loggedIn()->language()->addToStack('dev_widget_nowhere') : ( ( ( count( $json['restrict'] ) > 0 and count( $json['restrict'] ) !== 2 ) ? implode( ',', array_map( function($val ) { return Member::loggedIn()->language()->addToStack('dev_widget_restrict_'.$val); }, $json['restrict'] ) ) : Member::loggedIn()->language()->addToStack('everywhere') ) )
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1222,44 +1220,6 @@ abstract class Widget
|
||||
}
|
||||
|
||||
return static::$cachedConfiguration[ $uniqueId ] ?? array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get default widgets for an application
|
||||
*
|
||||
* @param Application|string $app The application
|
||||
* @return array
|
||||
*/
|
||||
public static function appDefaults( Application|string $app ): array
|
||||
{
|
||||
$app = is_string( $app ) ? Application::load( $app ) : $app;
|
||||
if ( !isset( Store::i()->widgets ) )
|
||||
{
|
||||
$widgets = array();
|
||||
foreach( Db::i()->select( '*', 'core_widgets' ) as $row )
|
||||
{
|
||||
if ( $row['app'] )
|
||||
{
|
||||
$widgets[ $row['app'] ][ $row['key'] ] = $row;
|
||||
}
|
||||
}
|
||||
|
||||
Store::i()->widgets = $widgets;
|
||||
}
|
||||
|
||||
$return = array();
|
||||
if ( isset( Store::i()->widgets[ $app->directory ] ) )
|
||||
{
|
||||
foreach ( Store::i()->widgets[ $app->directory ] as $widget )
|
||||
{
|
||||
if ( $widget['default_area'] )
|
||||
{
|
||||
$return[] = $widget;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user