Hello,
Do you know if it’s possible to freeze URL of the Dynamic Web Report from one export of this report to another? New information must have a new URL but information present from one version of this report to another should be the same URL.
Curently, people, places, sources… URL change over exports and are difficult to use as links on other sites.
Thank you.
1 Like
Can you explain this in detail ?
Can you provide an example ?
Sure,
These url are about the same person (Catherine Tabourier), now and when I saved it in a web page on dec. 2017:
Url are different and particularly idx which I think is the key issue, it seems not permanently associated with the “Catherine Tabourier” people object in gramps and varies from one creation to another of DWR web pages (maybe when number of objects varies in gramps?)
Should it be possible to use something like handles instead?
There is no user visibility or control of Handles in the GUI. It seems like a persistent IDX could be based on IDs instead…
I wonder whether the generated number is based on the center person & filtering during generation?
I suppose the two versions are related to 2 different gramps version ?
The idx is not the ID for the person. The real ID is Bk00137. The idx is an index in the json data table.
As your data grew a lot between the two dynamic web, the index in these tables differ.
You probably start to create the dynamic web with different parameters.
The dynamicweb plugin is an addon and it appears the author is relatively silencious since 2016
I don’t like to share URL like that. This is a general problem for all web sites which are often modified.
I just clicked on the links and they are for different people.
Tabourier, Catherine [Bk00137]
http://home.patrice.legoux.org/genealogie/person.html?p=search.html&stxt=Catherine%20tabourier&idx=7094
Leveque, Aignan [I03600]
http://home.patrice.legoux.org/genealogie/person.html?idx=4782
And the Leveque record has a date of 2019-10-08 14:43:53 so was created after 2017.
Are you indicating that this second URL used to point to Tabourier, Catherine [Bk00137] and is now pointing to Leveque, Aignan [I03600] ? Do you have an archived 2017 version of the webpages?
Obviously the IDX isn’t based on the ID. All the example IDX values were numeric, without an alpha leader. I was suggesting that maybe it could be changed to use IDs instead of the simple counter?
I suspect that one of the benefits @PLegoux (Patrice) was hoping for from permalinks is to make incremental revisions possible. Although his cited example of sharing URLs is also an excellent reason.
On the other had, it also looks like that modern search URL could be made to survive new IDX value by just eliminating that IDX search parameter. (It’d probably be slower and return multiple hits on namesakes.) The old example corresponds to a single individual.
1 Like
This is done by an external javascript library outside gramps, so no way to do that.
1 Like
Would it be possible to make a log file or an ini file with the used IDX paired with the Gramps ID, and to get the Library to check this list of data pair when regenerating a web site?
Would that be a workaround for this?
1 Like
Hi,
I was not there to answer you. I apologize.
In the past I won’t have this issue because ID in my gramps db was “standard” IDs (Innnnn). If I wont persistent-like URL I used search of IDs instead of search of person’s names in DWR then I removed idx from the url and everything was fine.
Now I’ve changed IDs of my family into Beruck notation leaving all other persons with regular IDs. Bk IDs are not really unique for search engine (if I want to search the bk00001 person, search engine will provide bk00001 (me), bk00001v (my daughter)…)
So these past days, I’ve learned python and develop some code to homogenize my Bk persons ID. I changed them to bk00001_ instead of bk00001, bk00001v_ etc… The trailing underscore makes IDs unique again for search engine.
It’s a workaround but it works pretty well (it will be best to have persistent idx but it’s okay).
P.S: I don’t archived previous DWR I generated, I will in the future. I begin now. Url is now based on http://home.patrice.legoux.org/genealogie/YYYY-MM/,
the first one is http://home.patrice.legoux.org/genealogie/2020-03/
So I’ll be able to save and compare results in the future
Thanks for your ideas and support !
Patrice
I’d like to come back to a discussion that started 3 years ago with the thread title “Freezing URL on Dynamic Web Report” (https://gramps.discourse.group/t/freezing-url-on-dynamic-web-report/306). What I have in mind is linking two web applications and what I’d need for this are URLs in the Dynamic Web Report (DWR) that are based on the Gramps ID or at least a concordance list of URLs with Gramps IDs. An example to clarify the issue is shown in the screen shot below.
The popup window in the north east corner of the screen shot will list a lot of information about the farm selected on the map. This information includes all the owners in the column “Name des Hofbesitzers” (name of farm owner). I’d like to make the names in that column clickable, i.e. to present each name as a hyperlink into a website created by the DWR. So it would be possible to jump between those two web applications moving from a geographical perspective to a genealogical one.
I understand that this should be possible at least in theory since the page for a person in the DWR web site can be adressed by the URL …/person.html?idx=nnnnn. An identical approach should be feasible for places since their pages are adressed by the URL …/place.html?pdx=nnnnn. The obvious problem of course is: what is the correct idx/pdx value for a certain person or place? As far as I understand, the idx/pdx value is not identical with or cannot be derived from the ID value in Gramps so I guess it is somehow calculated by an enumeration algorithm in the report in Gramps. The comment of SNoiraud 3 years ago (https://gramps.discourse.group/t/freezing-url-on-dynamic-web-report/306/8) appears to point into this direction and to say that this enumeration algorithm is part of an external Javascript library being used by the report and therefore “off limits”. StoltHD then asked if it would be possible to generate a concordance list that will provide a link between the idx/pdx values and the corresponding Gramps ID but I don’t see any answer to that question.
I hope this answers your query. The javascript that handles the URL is quite flexible and allows you to use the gramps id instead of the dynamic index. For a person: …/person.html?igid=Ixxxx; for a place: …/place.html?places.html&pgid=Pxxxx.
I am not sure why the person works slightly differently to places but these work for me.
I have only just tested this out but it seems robust and should provide you with the static URL you are looking for. It should also work for all the other indexes but I haven’t tested them.
2 Likes
Perfect – that’s exactly I’ve been looking for! Thanks a lot for your comment.