Theme Change Issues

Discussion in 'Installation/Configuration' started by dclardy, Mar 13, 2013.

  1. dclardy

    dclardy Member

    Is anyone having issues with themes in ISPConfig 3 - 3.0.5.1?

    I copied the new default theme to make my version of a theme, and it does not seem to like it. After I logout, it always tries to show me a different theme, and it gives me a compatibility error. I then have to go to Tools -> Interface -> Pick my theme, and it works fine.

    Is it not storing something properly? Kind of tired of it always changing.
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    ensure that you changed the default theme also in the config.inc.php file of the interface as the theme defined there is used for the login.
     
  3. dclardy

    dclardy Member

    Till,

    I did that. It tries to revert it back when I login. Not sure what is going on.

    It had never done that in the past, but it started happening with 3.0.5.*. It shows the correct logo in the old theme. So it is taking that part.
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    There raev 2 places were the theme is storde, the config.inc.php page for the global setting and the settings of the ispconfig system user that you used to login. ensure that you select the same theme in both places.

    also ensure that you updated your theme for ispconfig 3.0.5, some of the templates ahve changed from 3.0.4.6.
     
  5. dclardy

    dclardy Member

    Till,

    The changes have been made in the Config.inc.php file. I have also made them in the System -> CP Users -> Design section. <- These seem to have no effect.

    To get it to work, I have to change Tools -> Interface -> Design. The value is selected there, but it does not show that theme. I have to re-press save to get it to apply.

    If you would like, I can give you a login. It is happening for all users.
     
  6. till

    till Super Moderator Staff Member ISPConfig Developer

    Thats the exact same setting then System -> CP Users -> Design
     
  7. dclardy

    dclardy Member

    Alright. Then they both don't work for me. Not sure what I could be doing wrong.
     
  8. till

    till Super Moderator Staff Member ISPConfig Developer

    You can verify if they get applied by looking into the sys_user table with phpmyadmin. If the new theme name is listed there for the user you changed it then this theme is used by the user.

    Did you check your theme files that they dont contain any paths to css files or similar inludes of the default theme so thet the css from there is loaded instead of the files of your theme?
     
  9. dclardy

    dclardy Member

    Till,

    All links are to my theme. It works after I press save.

    The theme settings are correct in the sys_user table.

    [​IMG]
     
    Last edited: Mar 13, 2013
  10. dclardy

    dclardy Member

    Till,

    Here is another example of the theme being deactivated at startup. There is nothing wrong with the theme. It is an exact copy of the default theme with some styling changes.

    [​IMG]
     
  11. till

    till Super Moderator Staff Member ISPConfig Developer

    ISPConfig 3.0.5 themes contain a version file, if your theme is compatible with the installed version, please add the ispconfig_version file in your theme with the current version number of the installed ispconfig version.
     
  12. dclardy

    dclardy Member

    Till,

    Can you give me an example of this file? I found one in the default-304 folder. I added that into my folder and changed the version number to 3.0.5.1. That did not work.

    I even changed the permissions on the file to be 750 as they are in the other folder, but still no luck. Have you tried the theme switching on any test boxes that you have? Is it working?
     
    Last edited: Mar 14, 2013
  13. dclardy

    dclardy Member

    Till,

    I have found the issue. I was looking through the code for login, and I found this.

    Code:
    if($_SESSION['s']['user']['theme'] != 'default') {
                                        $tmp_path = ISPC_THEMES_PATH."/".$_SESSION['s']['user']['theme'];
                                        if(!@is_dir($tmp_path) || !@file_exists($tmp_path."/ISPC_VERSION") || trim(file_get_contents($tmp_path."/ISPC_VERSION")) != ISPC_APP_VERSION) {
                                            // fall back to default theme if this one is not compatible with current ispc version
                                            $_SESSION['s']['user']['theme'] = 'default';
                                            $_SESSION['s']['theme'] = 'default';
                                            $_SESSION['show_error_msg'] = $app->lng('theme_not_compatible');
                                        }
                                    }
    It is checking for the file ISPC_VERSION. The sample files in the other directories are ispconfig_version.

    I made the change to my file name, and the theme loads every single time.

    So the key here is to add an ISPC_VERSION file to your theme for it to work. The file name ispconfig_version will not work currently.
     
  14. till

    till Super Moderator Staff Member ISPConfig Developer

    Ok, thanks for pointing that ou. I fixed the code so that it uses the correct name "ispconfig_version" for the file.
     
  15. dclardy

    dclardy Member

    Well, I guess I will change my file name when you release 3.0.5.2. For now, I am just using the one that you are checking for.
     
  16. till

    till Super Moderator Staff Member ISPConfig Developer

    Or you add both filenames.
     
  17. dclardy

    dclardy Member

    I went ahead and added that.
     
  18. jimmyk

    jimmyk New Member

    I have just upgraded an ISPConfig 3.0.4.6 to version 3.0.5.2 and I have been struggling with the same login issues on my theme.

    After adding both the 'ISPC_VERSION' and 'ispconfig_version' files to my theme folder the login problems were resolved. I then removed the file name 'ISPC_VERSION' and the login process still worked fine so I think this issue seems to have been resolved in version 3.0.5.2.

    The odd thing is that the upgrade process added an 'ispconfig_version' file to all the ISPConfig default theme folders, but the files contained version number 3.0.4.6. This meant that these themes were not visible in the webinterface for ISPconfig under the: Tools--> Interface --> Design, dropdown menu.

    Thanks for this post as I was struggling to resolve this issue (even thought I noticed the new ISPConfig version contained an additional 'ispconfig_version' file about four hours before I came across this post!)
     

Share This Page