Make a Lasting Impression
ImpressCMS Blog > All posts of debianus

UI for 2.0 preview: Smarty debug

One of 2.0 release goals is get a more friendly and responsive UI in User and Admin Side. The job is next to the end.
A minor advance shows the point: Smarty debug.
The classic look and feel is really ugly and outdated. keep reading ...

No comment

Different theme styles for different modules

You have a nice theme for your ImpressCMS site, but what of you would like use different styles for each site section, as news, downloads, wiki, etc. There are themes with different colors; why uses only one color if you can use all availables? Here if Smarty tag shows its power. Let´s go! keep reading ...

3 comments

How create a fancy Theme Select Block

A nice ImpressCMS feature is if you like users or visitors can select themes  But the classic Select Theme Block looks old and if you like play with modern select scripts or HTML5 there is a problem: template file (system_blocks_themes.html) has only one smarty var: <{$block.theme_select}>. All HTML code is in a core php file.


Well, let´s go change.


First edit /modules/system/blocks/system_blocks.php file and replace lines 593-600 with

$block = array();<br />&nbsp;&nbsp; &nbsp;$block['imagenes'] = $options[0];<br />&nbsp;&nbsp; &nbsp;if ($options[0] == 1) {<br />&nbsp;&nbsp; &nbsp;$block['imagenesruta'] =&nbsp; "" . ICMS_THEME_URL . "/" . $icmsConfig['theme_set'] . "/shot.gif" alt="screenshot" width="". (int) $options[1] . "";<br />&nbsp;&nbsp; &nbsp;} <br />&nbsp;&nbsp; &nbsp;$block['numero'] =&nbsp;&nbsp; sprintf(_MB_SYSTEM_NUMTHEME, count($icmsConfig['theme_set_allowed'])) ;<br />&nbsp;&nbsp; &nbsp;$block['opciones'] = $theme_options;<br />

We have now new smarty vars and can play with them in the template file.
    
    In /modules/system/templates/blocks/system_blocks_themes.html
    
    replace for
</p>
<p>&nbsp;&nbsp; &nbsp;<div style="text-align: center;"><br />&nbsp;&nbsp; &nbsp;<form action="index.php" method="post"><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<{if $block.imagenes}><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<img src="<{$block.imagenesruta}>" vspace="2" id="icms_theme_img" /><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br /><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<select id="theme_select" name="theme_select" onchange="showImgSelected('xoops_theme_img', 'theme_select', 'themes', '/shot.gif',<{$icms_url}>)"><{$block.opciones}></select><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<input type="submit" value="<{$smarty.const._GO}>" /><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<{else}><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<select id="theme_select" name="theme_select" onchange="submit();" size="3"><{$block.opciones}></select><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<{/if}><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<p><{$block.numero}></p><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</div><br />&nbsp;&nbsp; &nbsp;</form><br /></div><br />

Clear cache

Now you can use mousewheel or fancy select scripts.
No comment

Theme select: get out HTML from core and play with template file

A nice ImpressCMS feature is if you like users or visitors can select themes.  But the classic Select Theme Block looks old and if you like play with modern select scripts or HTML5 there is a problem: template file (system_blocks_themes.html) has only one smarty var: <{$block.theme_select}>. All HTML code is in a core php file.

themesselect1
Well, let´s go with changes.

Just look this code and apply the changes in your Impresscms installation.

You have now new smarty vars and HTML code in your template file. Only option tag remains.

However your look block will have not changes. It is normal because it is a matter for themes and templates.

You can now play with candy jQuery scripts as Select Inspiration, Fancy Select, mousewheel or HTML 5 features.

Example using the new code.

themesselect2

No comment

Adding user avatar in User Menu block

The "classic" User Menu in left or right side is just for show links. But if you like get some candy in your theme, as show user information in a central page position or with more importance try these changes:

Edit the file /modules/system/blocks/systemblocks.php and around line 184 just add:

$block['user_avatar'] = ICMS_UPLOAD_URL . '/' . icms::$user->getVar('user_avatar'); 

You have now a new smarty var.

<{$block.user_avatar}>

Then edit in your theme the file system_block_user.html (if you use a custom template set use the Control Panel). Add the new var and play with HTML and CSS.

Example: userblock.jpg

8 comments
Pages:
Subscribe to latest posts from this poster