Need to load a new url with last viewed scene.

  • We owned a krpano in my office. It is very new to me.

    I have three types of theme settings to display a single project. I have a problem with that. I can load the new theme (ie)new set of images, (ie)a new page when I click a button. But by default it loads the first scene of that page. I need to load the new page with last viewed scene by the user. It has more than 5 scenes. I found were to edit by I don't know how. I am trying to fix this for last three days.

    Please help me out.


    <action name="skin_addthumbs">
    for(set(i,0), i LT scene.count, inc(i),
    txtadd(thumbname,'skin_thumb_',get(i));
    addlayer(get(thumbname));
    copy(layer[get(thumbname)].url, scene[get(i)].thumburl);
    set(layer[get(thumbname)].keep, true);
    set(layer[get(thumbname)].parent, 'skin_thumbs');
    set(layer[get(thumbname)].align, lefttop);
    copy(layer[get(thumbname)].crop, thumbcrop);
    copy(layer[get(thumbname)].width, thumbwidth);
    copy(layer[get(thumbname)].height, thumbheight);
    mul(thumbx, i, thumbxoffset);
    add(thumbx, thumbpadding);
    copy(layer[get(thumbname)].x, thumbx);
    copy(layer[get(thumbname)].y, thumbpadding);
    add(scene[get(i)].thumbx, thumbx, thumbxcenter);
    copy(scene[get(i)].thumby, thumbpadding);
    set(layer[get(thumbname)].linkedscene, get(scene[get(i)].name) );
    copy(linkingscene,layer[get(thumbname)].linkedscene);
    set(layer[get(thumbname)].onclick, copy(layer[skin_thumbborder].parent, name); loadscene(get(linkedscene), null, MERGE, BLEND(0.5)); skin_nextscene_loop(0););
    if(skin_settings.tooltips_thumbs,
    set(layer[get(thumbname)].tooltip, get(scene[get(i)].title) );
    layer[get(thumbname)].loadstyle(skin_tooltips);
    );
    if(skin_settings.thumbs_text,
    txtadd(thumbtext, 'skin_thumbtext_', get(i));
    addlayer(get(thumbtext));
    layer[get(thumbtext)].loadstyle(skin_thumbtext_style);
    set(layer[get(thumbtext)].keep, true);
    set(layer[get(thumbtext)].parent, get(thumbname));
    set(layer[get(thumbtext)].html, get(scene[get(i)].title));
    );
    );
    </action>

    <!-- THEME TEST -->

    <action name="skin_addthemes">
    for(set(i,0), i LT theme.count, inc(i),
    txtadd(themename,'skin_theme_',get(i));
    addlayer(get(themename));
    copy(layer[get(themename)].url, theme[get(i)].themeurl);
    set(layer[get(themename)].keep, true);
    set(layer[get(themename)].parent, 'skin_themes');
    set(layer[get(themename)].align, lefttop);
    copy(layer[get(themename)].crop, themecrop);
    copy(layer[get(themename)].width, themewidth);
    copy(layer[get(themename)].height, themeheight);
    mul(themex, i, themexoffset);
    add(themex, themepadding);
    copy(layer[get(themename)].x, themex);
    copy(layer[get(themename)].y, themepadding);
    add(theme[get(i)].themex, themex, themexcenter);
    copy(theme[get(i)].themey, themepadding);
    set(layer[get(themename)].linkedscene, get(theme[get(i)].url) );
    set(layer[get(themename)].onclick, copy(layer[skin_themeborder].parent, name); openurl(get(linkedscene), _self,); loadscene(get(linkingscene), null, MERGE, BLEND(0.5)); skin_nextscene_loop(0););
    <!-- set(loadscene(get(linkingscene), null, MERGE, BLEND(0.5)); ); -->
    <!-- set(layer[get(themename)].onclick, copy(layer[skin_thumbborder].parent, name); loadscene(get(linkedscene), null, MERGE, BLEND(0.5)); skin_nextscene_loop(0);); -->
    set(layer[get(theme_title)].html, get(theme[get(i)].title));
    if(listing.themename EQ layer[get(theme_title)].html,
    txtadd(layer[skin_themeborder].parent, 'skin_theme_', get(theme[get(i)].index));
    set(layer[skin_themeborder].visible, true););
    if(skin_settings.tooltips_themes,

    set(layer[get(themename)].tooltip, get(theme[get(i)].title) );
    layer[get(themename)].loadstyle(skin_tooltips);
    );
    if(skin_settings.themes_text,
    txtadd(themetext, 'skin_themetext_', get(i));
    addlayer(get(themetext));
    layer[get(themetext)].loadstyle(skin_themetext_style);
    set(layer[get(themetext)].keep, true);
    set(layer[get(themetext)].parent, get(themename));
    set(layer[get(themetext)].html, get(theme[get(i)].title));

    );
    );
    </action>

  • Thank you Sudarchikov Andrey.

    I tried that already but it didn't work. Because I have three different sets of images. (ie) Three html and related xml(contain scenes) file. When I press change theme it will load different html and related xml. So it takes 1st scene by default.

    So maintaining last loaded scene from one theme to another theme is little different I think. Or if it is possible by your way, please correct me.


    Thanks.


    Edited :

    <krpano onstart="start();"
    <action name="start">
    <!-- set default start scene if start_scene is not defined -->
    if(start_scene === null, set(start_scene,0); );
    loadscene(get(start_scene));
    </action>
    ...
    </krpano>

    This if statement will be always true when I load different html.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!