Main Menu
collapse

Simple Portal Archived Forum

This is an Archive Forum.

The content in this forum may be out-of-date or have been superseded by newer information, and links in forum pages to other sites may not work.
This forum contains archives for future reference.

Visit our thread at Simple Machines Forum for current support.

SMF 2.1 users: EhPortal is a ported version of Simple Portal specifically designed for the SMF 2.1 branch.
Please visit web-develop.ca to download EhPortal and for its support.

User Info

Welcome Guest.
Please log in.

Who's Online

  • Dot Guests: 1267
  • Dot Hidden: 0
  • Dot Users: 0

There aren't any users online.

Recent Posts

Adding Forums Button to Nav bar by jirapon
[August 01, 2019, 09:07:12 AM]


Re: Board Icons by ♦ Ninja ZX-10RR ♦
[July 30, 2019, 04:03:41 PM]


MOVED: Czech translation???? by ♦ Ninja ZX-10RR ♦
[July 30, 2019, 03:04:51 PM]


Board Icons by jirapon
[July 30, 2019, 07:28:44 AM]


Re: Thankyou Simpleportal, by ♦ Ninja ZX-10RR ♦
[July 29, 2019, 09:41:29 AM]


If you're interested in helping other members with support requests, consider joining the Community Support Helpers group.

Center blocks with no title or background help

Started by Zirc, August 27, 2010, 06:40:11 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Zirc

SMF: 2.0RC3
Simpleportal: 2.3.2, custom theme based off of Core

On my site I have two blocks in the center/top that are images and I have set these blocks to have no title or background so just the image shows up and nothing else.  You can see here.. http://www.tholeweb.com/test
I have gone into the .tborder style and added overflow-x: auto; to it so the blocks that have normal css will scroll instead of flow behind the right blocks.  I wanted to do this for the two top blocks but because I have selected not to have title or background on these they don't get a div style attached to them.  I can understand this because I don't want them to have a border either but is there someplace I can edit that will allow me to assign a different div class to blocks that don't have titles or backgrounds?  I tried several things in the portal.template.php but nothing has worked.  Any help would be great.

Thanks


Zirc

So I've been thinking about this and thought maybe if in my portal.template.php I added an IF statement that if there was no body or title it would assign a certain div class to it but my very very limited php isn't allowing my change to parse.

This is what is there:
function template_block_core($block)
{
global $settings;



echo '
<div class="', !empty($block['style']['no_body']) ? '' : ' tborder', '">
<table class="sp_block">';

if (empty($block['style']['no_title']))
{
echo '
<tr>
<td class="sp_block_padding ', $block['style']['title']['class'], '"', !empty($block['style']['title']['style']) ? ' style="' . $block['style']['title']['style'] . '"' : '', '>';

if (empty($block['force_view']))
echo '
<a class="sp_float_right" href="javascript:void(0);" onclick="sp_collapseBlock(\'', $block['id'], '\')"><img id="sp_collapse_', $block['id'], '" src="', $settings['images_url'], $block['collapsed'] ? '/expand.gif' : '/collapse.gif', '" alt="*" /></a>';

echo '
', parse_bbc($block['label']), '
</td>
</tr>';
}

echo '
<tr', (empty($block['force_view']) ? ' id="sp_block_' . $block['id'] . '"' : '') , $block['collapsed'] && empty($block['force_view']) ? ' style="display: none;"' : '', '>
<td class="sp_block_padding', ($block['type'] == 'sp_menu') ? '' : ' sp_block', empty($block['style']['body']['class']) ? '' : ' ' . $block['style']['body']['class'], '"', !empty($block['style']['body']['style']) ? ' style="' . $block['style']['body']['style'] . '"' : '', '>';

$block['type']($block['parameters'], $block['id']);

echo '
</td>
</tr>
</table>
</div>
<br />';

}


And this is what I was thinking would work
function template_block_core($block)
{
global $settings;

if (empty($block['style']['no_title'])) && (empty($block['style']['no_body']))
{
echo '
<div class="plain_block">
<table class="sp_block">';
}
else
{


echo '
<div class="', !empty($block['style']['no_body']) ? '' : ' tborder', '">
<table class="sp_block">';
}
if (empty($block['style']['no_title']))
{
echo '
<tr>
<td class="sp_block_padding ', $block['style']['title']['class'], '"', !empty($block['style']['title']['style']) ? ' style="' . $block['style']['title']['style'] . '"' : '', '>';

if (empty($block['force_view']))
echo '
<a class="sp_float_right" href="javascript:void(0);" onclick="sp_collapseBlock(\'', $block['id'], '\')"><img id="sp_collapse_', $block['id'], '" src="', $settings['images_url'], $block['collapsed'] ? '/expand.gif' : '/collapse.gif', '" alt="*" /></a>';

echo '
', parse_bbc($block['label']), '
</td>
</tr>';
}

echo '
<tr', (empty($block['force_view']) ? ' id="sp_block_' . $block['id'] . '"' : '') , $block['collapsed'] && empty($block['force_view']) ? ' style="display: none;"' : '', '>
<td class="sp_block_padding', ($block['type'] == 'sp_menu') ? '' : ' sp_block', empty($block['style']['body']['class']) ? '' : ' ' . $block['style']['body']['class'], '"', !empty($block['style']['body']['style']) ? ' style="' . $block['style']['body']['style'] . '"' : '', '>';

$block['type']($block['parameters'], $block['id']);

echo '
</td>
</tr>
</table>
</div>
<br />';

}


I've tried my if/else statement both with the curly brackets and without and still get parse errors.  Any help would be great.

Zirc

Yeah I have tried setting custom body classes and custom body styles but thats not the problem.  I've attached a screen shot to show what I'm dealing with.  I am using a modified Core theme on my site and normal blocks that have a title and/or body are assigned a div class of .tborder which is fine I want all the normal blocks to have that because it sets an overall border and background colors for all the blocks. 

The blocks that I do not want to have a title or background, like the one shown with the top arrow in the image, are not assigned a div class at all.  Normally this would be fine but I would like to put a div class in there so that I can set the overflow-x to auto so that the images and videos that I post don't spill over into the right side blocks if the window is not wide enough, I prefer to give it horizontal scroll bars if that happens. 

The way the blocks are set up is that any custom html block I do will be contained within the top level div container so no matter what custom body class or style I use there will always be the overall .tborder class that I can't change without it affecting all the other blocks on the site.
I have set the .tborder class to have overflow-x: auto so all normal blocks get scroll bars but I cannot get the ones without a body and title to do this with no css class to change.  This is why I want to hard code a specific class to blocks that do not have titles or bodies.  Thats where I was going with my idea earlier in the thread that says if there is no body or title class then it gets something like <div class="blank"> else <div class="tborder">

Thanks for responding btw I really appreciate any ideas

Zirc

Still looking for a solution to this, it's the only thing holding me back from using Simpleportal with 2.0RC3 I really like everything that Simpleportal has to offer and don't want to use something else.