NetTalk Central

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Poul Jensen

Pages: [1] 2 3 ... 17
1
OK.

But with data tables, the threaded connection strings you use need to be set on each thread.  Hence the suggestion to set them in ProcessLink each time a thread runs.

My point was that once you set a theme, you do not need to set it again each thread.  It's sticky to the session, not to a thread. 

That said, the one time that you set the theme can be with the rest of the stuff you're doing in ProcessLink - no need to have separate code to do it in PageHeaderTag.
Set the theme once in ProcessLink, and set the threaded connection strings there each time.

Noted.

Thanks for your comments.

2
Web Server - Ask For Help / Re: Changing theme has no effect
« on: April 19, 2025, 01:32:57 AM »
I think I have a solution now  ;D

In Webhandler - ProcessLink this code:
Code: [Select]
   !ANY PARAMETER?   IF NOT DEFAULTS TO '1', BUT ONLY IF p_web.GSV('CommandA') IS NOT SET:
    p_web.SSV('ChangeTheme', '0')
    IF p_web.GetValue('a') <> ''
        p_web.SetValue('CommandA', p_web.GetValue('a'))
        p_web.SSV('CommandA', p_web.GetValue('a'))
       
        !LOGS OUT
        p_web.SSV('Med_Init', '')
        p_web.SSV('Med_Navn', '')
        p_web.SSV('Med_Email', '')       
        p_web.SetSessionLoggedIn(0)
        p_web.SSV('ChangeTheme','1')
    ELSE
        IF p_web.GSV('CommandA') = '' 
            p_web.SetValue('CommandA','1')
            p_web.SSV('CommandA', '1')
            p_web.SSV('ChangeTheme', '1')
        END   
    END

    ds_outputdebugstring( 'Webhandler Processlink - p_web.GSV(CommandA) 2: ' & p_web.GSV('CommandA') )

    !SETTING THE DATAPATH - A FOLDER OFF THE STATIC PATH IN GLO:StellarProgSti
    GLO:RegnskabsNummer =  p_web.GSV('CommandA')
    p_web.SSV('GLO:RegnskabsNummer', GLO:RegnskabsNummer)
    GLO:DataSti =  CLIP(GLO:StellarProgSti) & '\' & p_web.GSV('CommandA')
    p_web.SSV('GLO:DataSti', GLO:DataSti)   
    p_web.SSV('DataPath', p_web.GSV('GLO:DataSti'))
       
    ds_outputdebugstring('Webhandler Processlink - GLO:DataSti: ' & p_web.GSV('DataPath'))

    IF EXISTS( GLO:DataSti )       
        GLO:Inifil =  clip(GLO:DataSti) & '\MobilService.ini'
        p_web.SSV('GLO:Inifil', GLO:Inifil) 
       
        include('\pstellar_filename_defs_Slim.inc')    !THIS IS WHERE THE FILENAMES ARE BUILD
           
        !GETTING CUSTOMER NAME FROM INI
        g:KundeNavn =  GETINI('KundeProg','Kundenavn_' & p_web.GSV('CommandA') ,'' , clip(path()) & '\KundeProg.ini')
        IF CLIP(g:KundeNavn) = ''
            !GRABS DEFAUL:
            g:KundeNavn =  GETINI('KundeProg','Kundenavn' ,'' , clip(path()) & '\KundeProg.ini')
        END
        p_web.SSV('Kundenavn', g:KundeNavn)
       
        !GETTING THEME FROM INI
        GloTheme =  GETINI('KundeProg','Theme_' & p_web.GSV('CommandA') ,'redmond', clip(path()) & '\KundeProg.ini')   
        p_web.SSV('theme', GloTheme )
       
        ds_outputdebugstring('Webhandler Processlink - GloTheme: ' & CLIP(GloTheme))           
       
    ELSE
        p_web.showInfo('ERROR IN PARAMETER.....')
        ds_outputdebugstring('Webhandler Processlink  - Path does not exist: ' & CLIP(GLO:DataSti) )
       
        !AND SETS DEFAULT
        p_web.SSV('CommandA', '1')   
    END

and in PageHeaderTag - Processed Code this:
Code: [Select]
    IF p_web.GSV('ChangeTheme') = '1' AND p_web.GSV('theme') <> ''

        ds_outputdebugstring('In PageHeaderTag - p_web.GSV(theme): ' & p_web.GSV('CommandA') & ' - ' & p_web.GSV('theme') )
        p_web.ChangeTheme( p_web.GSV('theme') )
        p_web.SSV('ChangeTheme', '0')
           
    END


3
Web Server - Ask For Help / Re: Changing theme has no effect
« on: April 18, 2025, 10:18:53 PM »
Hi Jane,

I really would like to set the theme as early as possible, and with static dataset this is easy.
As I understand it, with multiple datasets the Webhandler - Processlink is the best place to set the users dataset, and this works fine now.
And here I also read the user theme.
See the code below.

I will see if I can make it to the Thursday webinar.

Webhandler - Processlink:
Code: [Select]
    ds_outputdebugstring( 'Webhandler Processlink - p_web.GetValue(a) 1: ' & p_web.GetValue('a') )
    ds_outputdebugstring( 'Webhandler Processlink - p_web.GSV(CommandA) 1: ' & p_web.GSV('CommandA') )

   !ANY PARAMETER?   IF NOT DEFAULTS TO '1', BUT ONLY IF p_web.GSV('CommandA') IS NOT SET:
    IF p_web.GetValue('a') <> ''
        p_web.SetValue('CommandA', p_web.GetValue('a'))
        p_web.SSV('CommandA', p_web.GetValue('a'))
       
        !LOGS OUT
        p_web.SSV('Med_Init', '')
        p_web.SSV('Med_Navn', '')
        p_web.SSV('Med_Email', '')       
        p_web.SetSessionLoggedIn(0)
    ELSE
        IF p_web.GSV('CommandA') = '' 
            p_web.SetValue('CommandA','1')
            p_web.SSV('CommandA', '1')
        END   
    END

    ds_outputdebugstring( 'Webhandler Processlink - p_web.GSV(CommandA) 2: ' & p_web.GSV('CommandA') )

    !SETTING THE DATAPATH - A FOLDER OFF THE STATIC PATH IN GLO:StellarProgSti
    GLO:RegnskabsNummer =  p_web.GSV('CommandA')
    p_web.SSV('GLO:RegnskabsNummer', GLO:RegnskabsNummer)
    GLO:DataSti =  CLIP(GLO:StellarProgSti) & '\' & p_web.GSV('CommandA')
    p_web.SSV('GLO:DataSti', GLO:DataSti)   
    p_web.SSV('DataPath', p_web.GSV('GLO:DataSti'))
       
    ds_outputdebugstring('Webhandler Processlink - GLO:DataSti: ' & p_web.GSV('DataPath'))

    IF EXISTS( GLO:DataSti )       
        GLO:Inifil =  clip(GLO:DataSti) & '\MobilService.ini'
        p_web.SSV('GLO:Inifil', GLO:Inifil) 
       
        include('\pstellar_filename_defs_Slim.inc')    !THIS IS WHERE THE FILENAMES ARE BUILD
           
        !GETTING CUSTOMER NAME FROM INI
        g:KundeNavn =  GETINI('KundeProg','Kundenavn_' & p_web.GSV('CommandA') ,'' , clip(path()) & '\KundeProg.ini')
        IF CLIP(g:KundeNavn) = ''
            !GRABS DEFAULT:
            g:KundeNavn =  GETINI('KundeProg','Kundenavn' ,'' , clip(path()) & '\KundeProg.ini')
        END
        p_web.SSV('Kundenavn', g:KundeNavn)
       
        !GETTING THEME FROM INI
        GloTheme =  GETINI('KundeProg','Theme_' & p_web.GSV('CommandA') ,'redmond', clip(path()) & '\KundeProg.ini')   
        p_web.SSV('theme', GloTheme )
       
        ds_outputdebugstring('Webhandler Processlink - GloTheme: ' & CLIP(GloTheme))           
       
    ELSE
        p_web.showInfo('ERROR IN PARAMETER.....')
        ds_outputdebugstring('Webhandler Processlink  - Path does not exist: ' & CLIP(GLO:DataSti) )
       
        !AND SETS DEFAULT
        p_web.SSV('CommandA', '1')   
    END


Webhandler - ParseRequestHeader:
Code: [Select]
!CALLING ONE OR THE OTHER - BUT SINCE THEY ARE CLEARED, NO CHANGETHEME HAPPENS:

!ds_outputdebugstring('In ParseRequestHeader - p_web.GSV(theme): ' & p_web.GSV('CommandA') & ' - ' & p_web.GSV('theme') )
!IF CLIP(p_web.GSV('theme')) <> ''
!    self.ChangeTheme( p_web.GSV('theme') )
!END

ds_outputdebugstring('In ParseRequestHeader - GloTheme: ' & p_web.GSV('CommandA') & ' - ' & CLIP(GloTheme ))
IF CLIP(GloTheme) <> ''
    self.ChangeTheme( CLIP(GloTheme ))
END

4
Web Server - Ask For Help / Re: Changing theme has no effect
« on: April 18, 2025, 12:25:22 AM »
My initial description is incomplete.
I actually read the individual users dataset and thus their selected theme in Webhandler - Processlink, and set the GloTheme accordingly.

But in Webhandler - ParseRequestHeader those variables are empty, no matter if I use
self.ChangeTheme( GloTheme )
or
self.ChangeTheme( p_web.GSV('theme') )

I am confused....

/Poul

5
Web Server - Ask For Help / Changing theme has no effect (RESOLVED)
« on: April 17, 2025, 02:27:20 AM »
In Webhandler - ParseRequestHeader I have:

Code: [Select]
GloTheme =  GETINI('KundeProg','Theme_' & p_web.GSV('CommandA') ,'redmond', clip(path()) & '\KundeProg.ini')
ds_outputdebugstring('In ParseRequestHeader - GloTheme: ' & GloTheme )

self.ChangeTheme( GloTheme )

but no change in theme is being done.
I have verified that the correct theme is picked from the ini-file.

Any hints?

tia
/Poul


6
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 17, 2025, 12:32:39 AM »
p_web.StoreValue('a')
Is the best way to set a session value to a value, because then if the value doesn't exist (as a parameter) it does not overwrite the session value.
I expect you are just overwriting your session value to blank when the value does not exist.

Thanks Bruce - spot on.

7
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 17, 2025, 12:32:03 AM »
You'll need to set your filename variables EACH TIME your code runs through p_web.ProcessLink in the webhandler (because each pass through there is happening on a new thread), so set the session values the first time (when they're sent as parameters) then use those session values to set the filename variables EACH TIME.

That was the missing piece :-)

Thanks Jane.

8
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 15, 2025, 10:43:24 PM »
Hi Alberto,

That is what I am using, but at soon as I click the button for the login window, the filename variables are being reset.

Cheers
/Poul

9
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 15, 2025, 08:21:01 AM »
Let me expand on this:

What I want to achieve, is to call the app with a parameter, read this parameter and change the filenames global variable names, so they point to a specific dataset.
As per the docs re Multiple Data Sets:  https://www.capesoft.com/docs/NetTalk14/NetTalkWebBasic.htm#MultipleDataSets, I have tried the webhandler RequestHostSet embed to read the parameter and save it in a session variable.

But next time through the webhandler this is being reset.

So I need some guidance here for the best approach.

tia

/Poul

10
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 15, 2025, 06:53:16 AM »
What is the earliest point in the app, where I should read the parameter, preferably code that is reached once only per user?

/Poul

11
Web Server - Ask For Help / Re: Pass parameter in servercall?
« on: April 14, 2025, 09:57:53 PM »
Tak Niels.

12
Web Server - Ask For Help / Pass parameter in servercall? (RESOLVED)
« on: April 14, 2025, 08:39:08 PM »
Hi,

I would like to pass a parameter to the NT server like this:
https://myntserver.com?a=x

And then read the value x into a session value in the webserver procedure.

How do I do this?

tia
/Poul

13
Web Server - Ask For Help / Re: Custom icon for markers on NT Maps?
« on: April 07, 2025, 10:15:31 AM »
Thanks Alberto,

But isn't this the code for the map on desktop?

I need the equivalent for NT web.

Cheers
/Poul

14
Web Server - Ask For Help / Custom icon for markers on NT Maps?
« on: April 07, 2025, 03:09:43 AM »
Hi,

NT Maps have marker icons that are located in /web/images and have filenames like marker-icon-aqua.png, marker-icon-blue.png etc.
The markers are defined in d:\Clarion11\accessory\libsrc\win\NetWeb\web\scripts\jquery.nt-maps.js

I would like to add my own icons like the ones with letters shown on attached screenshot from my desktop map.

Since I only use 4 colours I *could* modify the unused icons in the shipping set, but I would rather add my own custom icons.
Is it possible to add additional js code somewhere, without modifying the shipping jquery.nt-maps.js.  Something like this:

Code: [Select]
var myYellowVMarker = L.icon({
    iconUrl: '/images/marker-icon-yellowV.png',
    iconRetinaUrl: '/images/marker-icon-yellowV-2x.png',
    shadowUrl: '/images/marker-shadow.png',
    iconSize: [25, 41],
    iconAnchor: [12, 41],
    popupAnchor: [1, -34],
    shadowSize: [41, 41]
});

Cheers
/Poul

15
Web Server - Ask For Help / Maps on mobile have big left padding
« on: April 02, 2025, 11:04:43 AM »
Hi,

At the moment I have two procedures with the map. One for desktop and one for mobile.
The one shown is selected based on clients screenwidth, and this works fine.

On desktop the map is shown as expected with no left margin / padding, but on mobile there is a large left margin, that I *think* is due to a class called "nt-tab-inner".

How can I get rid of that, so the mobile map is all the way to the left edge of the screen?

PS:  I do inspect the page code in desktop browsers dev. tools with emulation set to Samsung S8.  Will this 100% represents what I will see on the mobile?

tia
/Poul

Pages: [1] 2 3 ... 17