1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-01 20:30:39 +02:00

News Grid template simplified. Template/Layout combination consolidated into 'layout' only.

This commit is contained in:
Cameron
2017-02-13 18:14:26 -08:00
parent 4fa8e47247
commit f6612410e0
5 changed files with 81 additions and 30 deletions

View File

@@ -62,6 +62,11 @@ class news_shortcodes extends e_shortcode
$text = e107::getParser()->toAttribute($text);
}
if(!empty($this->param['titleLimit']))
{
$parm['limit'] = $this->param['titleLimit'];
}
if(!empty($parm['limit']))
{
$text = e107::getParser()->text_truncate($text, $parm['limit']);
@@ -583,6 +588,12 @@ class news_shortcodes extends e_shortcode
}
}
if(!empty($this->param['summaryLimit']))
{
$parm['limit'] = $this->param['summaryLimit'];
}
if(!empty($parm['limit']))
{
$text = e107::getParser()->text_truncate($text, $parm['limit']);

View File

@@ -689,6 +689,7 @@ class e_news_tree extends e_front_tree_model
$ret = array();
$tp = e107::getParser();
$param = $parms;
$param['current_action'] = 'list';
// TODO more default parameters

View File

@@ -12,11 +12,13 @@
if (!defined('e107_INIT')) { exit; }
//v2.x Standard for extending menu configuration within Menu Manager. (replacement for v1.x config.php)
//TODO Configure for news menus.
class news_menu
{
public $tabs = array();
function __construct()
{
// e107::lan('news','admin', 'true');
@@ -47,21 +49,24 @@ class news_menu
switch($menu)
{
case "latestnews":
$fields['caption'] = array('title'=> LAN_CAPTION, 'type'=>'text', 'multilan'=>true, 'writeParms'=>array('size'=>'xxlarge'));
$fields['count'] = array('title'=> LAN_LIMIT, 'type'=>'text', 'writeParms'=>array('pattern'=>'[0-9]*', 'size'=>'mini'));
$fields['category'] = array('title'=> LAN_CATEGORY, 'type'=>'dropdown', 'writeParms'=>array('optArray'=>$categories, 'default'=>'blank'));
$fields['caption'] = array('title'=> LAN_CAPTION, 'tab'=>0, 'type'=>'text', 'multilan'=>true, 'writeParms'=>array('size'=>'xxlarge'));
$fields['count'] = array('title'=> LAN_LIMIT, 'tab'=>1, 'type'=>'text', 'writeParms'=>array('pattern'=>'[0-9]*', 'size'=>'mini'));
$fields['category'] = array('title'=> LAN_CATEGORY, 'type'=>'dropdown', 'writeParms'=>array('optArray'=>$categories, 'default'=>'blank'), 'help'=>'Help Text');
break;
case "news_grid":
$fields['caption'] = array('title'=> LAN_CAPTION, 'type'=>'text', 'multilan'=>true, 'writeParms'=>array('size'=>'xxlarge'), 'help'=>LAN_OPTIONAL);
$fields['category'] = array('title'=> LAN_CATEGORY, 'type'=>'dropdown', 'writeParms'=>array('optArray'=>$categories, 'default'=>"(".LAN_ALL.")"), 'help'=>"Limit news items to a specific category");
$fields['source'] = array('title'=> "Source", 'type'=>'dropdown','writeParms'=>array('optArray'=>$sources), 'help'=>"Assigned items are those with a template assigned to 'News Grid Menu' ");
$fields['template'] = array('title'=> LAN_TEMPLATE, 'type'=>'dropdown', 'writeParms'=>array('optArray'=>$templates));
$fields['layout'] = array('title'=> "Layout", 'type'=>'method', 'writeParms'=>'');
$fields['count'] = array('title'=> "Number of Items to Display", 'type'=>'number', 'writeParms'=>array('pattern'=>'[0-9]*', 'default'=>4));
$fields['feature'] = array('title'=> "Number of Feature Items", 'type'=>'number', 'writeParms'=>array('pattern'=>'[0-9]*', 'default'=>0));
$fields['titleLimit'] = array('title'=> "Title Character Limit", 'type'=>'number', 'writeParms'=>'');
$fields['summaryLimit'] = array('title'=> "Summary Character Limit", 'type'=>'number', 'writeParms'=>'');
$this->tabs = array(0 => LAN_PREFS, 1 => "Limits");
$fields['caption'] = array('title'=> LAN_CAPTION, 'type'=>'text', 'tab'=>0, 'multilan'=>true, 'writeParms'=>array('size'=>'xxlarge'), 'help'=>LAN_OPTIONAL);
$fields['category'] = array('title'=> LAN_CATEGORY, 'type'=>'dropdown', 'tab'=>0, 'writeParms'=>array('optArray'=>$categories, 'default'=>"(".LAN_ALL.")"), 'help'=>"Limit news items to a specific category");
$fields['source'] = array('title'=> "Source", 'type'=>'dropdown','tab'=>0, 'writeParms'=>array('optArray'=>$sources), 'help'=>"Assigned items are those with a template assigned to 'News Grid Menu' ");
$fields['layout'] = array('title'=> LAN_TEMPLATE, 'type'=>'dropdown', 'tab'=>0, 'writeParms'=>array('optArray'=>$templates));
// $fields['layout'] = array('title'=> "Layout", 'type'=>'method', 'tab'=>0,'writeParms'=>'');
$fields['count'] = array('title'=> "Number of Items to Display", 'tab'=>1, 'type'=>'number', 'writeParms'=>array('pattern'=>'[0-9]*', 'default'=>4));
$fields['feature'] = array('title'=> "Number of Feature Items", 'tab'=>1, 'type'=>'number', 'writeParms'=>array('pattern'=>'[0-9]*', 'default'=>0));
$fields['titleLimit'] = array('title'=> "Title Character Limit", 'tab'=>1, 'type'=>'number', 'writeParms'=>'');
$fields['summaryLimit'] = array('title'=> "Summary Character Limit",'tab'=>1, 'type'=>'number', 'writeParms'=>'');
break;

View File

@@ -60,14 +60,14 @@ if(false === $cached)
}
else // New in v2.1.5
{
$tmpl = !empty($parms['template']) ? $parms['template'] : 'default';
$tmpl = !empty($parms['layout']) ? $parms['layout'] : 'col-md-4';
$template = e107::getTemplate('news', 'news_grid', $tmpl);
$parms['tmpl'] = 'news_grid';
$parms['tmpl_key'] = $tmpl;
}
$gridSize = vartrue($parms['layout'],'col-md-4');
// $gridSize = vartrue($parms['layout'],'col-md-4');
$parmSrch = array(
'{NEWSGRID}',
@@ -76,12 +76,12 @@ if(false === $cached)
);
$parmReplace = array(
$gridSize,
vartrue($parms['titleLimit'], 0),
vartrue($parms['summaryLimit'], 0)
// $gridSize,
// vartrue($parms['titleLimit'], 0),
// vartrue($parms['summaryLimit'], 0)
);
$template = str_replace($parmSrch , $parmReplace, $template);
$template = str_replace($parmSrch , '', $template); // clean up deprecated elements.
$render = (empty($parms['caption'])) ? false: true;

View File

@@ -9,16 +9,16 @@
*/
$NEWS_GRID_TEMPLATE['default']['start'] = '<div class="row news-grid-default news-menu-grid">';
$NEWS_GRID_TEMPLATE['col-md-6']['start'] = '<div class="row news-grid-default news-menu-grid">';
$NEWS_GRID_TEMPLATE['default']['featured'] = '<div class="row featured">
$NEWS_GRID_TEMPLATE['col-md-6']['featured'] = '<div class="row featured">
<div class="col-sm-12">
<div class="item col-sm-6" >
{SETIMAGE: w=600&h=400&crop=1}
{NEWSTHUMBNAIL=placeholder}
</div>
<div class="item col-sm-6">
<h3>Featured {NEWSTITLE: limit=_titleLimit_}</h3>
<h3>{NEWSTITLE}</h3>
<p>{NEWSMETADIZ: limit=100}</p>
<p class="text-right"><a class="btn btn-primary btn-othernews" href="{NEWSURL}">' . LAN_READ_MORE . '</a></p>
</div>
@@ -26,15 +26,49 @@
</div>
';
$NEWS_GRID_TEMPLATE['default']['item'] = '<div class="item {NEWSGRID}">
$NEWS_GRID_TEMPLATE['col-md-6']['item'] = '<div class="item col-md-6">
{SETIMAGE: w=400&h=400&crop=1}
{NEWSTHUMBNAIL=placeholder}
<h3>{NEWSTITLE: limit=_titleLimit_}</h3>
<p>{NEWSSUMMARY: limit=_summaryLimit_}</p>
<h3>{NEWS_TITLE}</h3>
<p>{NEWS_SUMMARY}</p>
<p class="text-right"><a class="btn btn-primary btn-othernews" href="{NEWSURL}">' . LAN_READ_MORE . '</a></p>
</div>';
$NEWS_GRID_TEMPLATE['default']['end'] = '</div>';
$NEWS_GRID_TEMPLATE['col-md-6']['end'] = '</div>';
$NEWS_GRID_TEMPLATE['col-md-4']['start'] = $NEWS_GRID_TEMPLATE['col-md-6']['start'];
$NEWS_GRID_TEMPLATE['col-md-4']['featured'] = $NEWS_GRID_TEMPLATE['col-md-6']['featured'];
$NEWS_GRID_TEMPLATE['col-md-4']['item'] = '<div class="item col-md-4">
{SETIMAGE: w=400&h=400&crop=1}
{NEWSTHUMBNAIL=placeholder}
<h3>{NEWS_TITLE}</h3>
<p>{NEWS_SUMMARY}</p>
<p class="text-right"><a class="btn btn-primary btn-othernews" href="{NEWSURL}">' . LAN_READ_MORE . '</a></p>
</div>';
$NEWS_GRID_TEMPLATE['col-md-4']['end'] = $NEWS_GRID_TEMPLATE['col-md-6']['end'];
$NEWS_GRID_TEMPLATE['col-md-3']['start'] = $NEWS_GRID_TEMPLATE['col-md-6']['start'];
$NEWS_GRID_TEMPLATE['col-md-3']['featured'] = $NEWS_GRID_TEMPLATE['col-md-6']['featured'];
$NEWS_GRID_TEMPLATE['col-md-3']['item'] = '<div class="item col-md-3">
{SETIMAGE: w=400&h=400&crop=1}
{NEWSTHUMBNAIL=placeholder}
<h3>{NEWS_TITLE}</h3>
<p>{NEWS_SUMMARY}</p>
<p class="text-right"><a class="btn btn-primary btn-othernews" href="{NEWSURL}">' . LAN_READ_MORE . '</a></p>
</div>';
$NEWS_GRID_TEMPLATE['col-md-3']['end'] = $NEWS_GRID_TEMPLATE['col-md-6']['end'];
@@ -44,8 +78,8 @@
$NEWS_GRID_TEMPLATE['other']['featured'] = '<div class="featured item col-sm-6" >
{SETIMAGE: w=600&h=400&crop=1}
{NEWSTHUMBNAIL=placeholder}
<h3>Featured {NEWSTITLE: limit=_titleLimit_}</h3>
<p>{NEWSSUMMARY}</p>
<h3>{NEWS_TITLE}</h3>
<p>{NEWS_SUMMARY}</p>
</div>
@@ -62,8 +96,8 @@
</a>
</div>
<div class="media-body">
<h4 class="media-heading">{NEWSTITLE: limit=_titleLimit_}</h4>
<p>{NEWSSUMMARY: limit=_summaryLimit_}</p>
<h4 class="media-heading">{NEWS_TITLE}</h4>
<p>{NEWS_SUMMARY}</p>
</div>
</li>
</ul>