hyperlink aanmaken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C++ Developer

Are you fluent in C++? Do you have an interest in elegant algorithms and solving a wide array of extremely challenging C++ development tasks? If so, then we would like to meet you. Your responsibilities will include but not restricted to: Design, build and maintain efficient, reusable, and reliable C++ code Working autonomously is essential. As a developer you are expected to do architecture, design, implementation, customer feedback and bug fixing (rather than splitting these activities between several developers) Building cross-platform applications Implementing reverse/back-engineering development using IDA from Hex-Rays Requirements: Strong proficiency in C++14, with a fair knowledge of the

Bekijk vacature »

Medior PHP developer / Online Marketing Makelaardi

Waar kom je terecht? In deze gezellige Delftse organisatie slaan zij de brug tussen makelend Nederland en online marketing. Je komt binnen in een grote open ruimte dat er uit ziet als een soort glazen bunker (hoe vet is dat)! Samen met diverse jonge en informele collega’s zorgen zij er dagelijks voor dat elke dag, weer een gezellige dag is waar zowel hard gewerkt als veel gelachen wordt. Met ruim 10 jaar ervaring in het ontwikkelen van online marketing producten voor de makelaardij, laten ze zien dat ze het makelaarsvak begrijpen, zowel een kopers- als een verkopers markt. Omdat de

Bekijk vacature »

Medior C# Developer

Vacature Omschrijving De financiële wereld is absoluut saai en de verzekeringswereld ook, maar niet bij dit bedrijf. Geloof je het niet? Let them prove it. Dit bedrijf is in 2010 begonnen in een kelderkamertje en zijn nu al met ruim 100 man. Zij houden zich bezig met pensioenen en vermogens. Dit klinkt natuurlijk saai, maar gelukkig niet bij hun. Zij doen het op hun eigen manier. Zij zijn van mening dat het anders moet met lage kosten, begrijpelijke producten en lekker hard rennen voor je klant. Ze hanteren een open en frisse cultuur, lekker informeel. Met dit bedrijf krijg je

Bekijk vacature »

Senior Magento/PHP developer bij BigBridge

Vacature Omschrijving Functieomschrijving BigBridge is per direct op zoek naar een Senior Magento/PHP developer. Het betreft een fulltime functie waarin je binnen Magento volop bezig bent met het ontwikkelen van technisch hoogwaardige oplossingen voor onze klanten. BigBridge is een toonaangevend e-commerce bureau en gevestigd in Nijmegen en ontwikkelen hoogwaardige oplossingen op basis van Magento. Met een team van 10 professionals werk je voor succesvolle online spelers zoals Siebel Juweliers, Bamigo.com en Lusanna.nl. De klanten van BigBridge bevinden zich in verschillende branches zoals retail, groothandels en producenten. Bij BigBridge hangt een informele werksfeer en krijg je veel ruimte voor eigen initiatieven.

Bekijk vacature »

Laravel Developer

Als Laravel ontwikkelaar werk je in een enthousiast en informeel team van ruim tien medewerkers en kom je in aanraking met de nieuwste technieken. De focus van de organisatie ligt op het ontwikkelen van gebruiksvriendelijke online educatieve oplossingen, zoals interactieve websites met streaming video en audio. Al meer dan 30 jaar levert deze organisatie oplossingen om kennisoverdracht eenvoudig te maken bij particulieren door middel van e-learning. Een beeld zegt namelijk meer dan duizend woorden. Bij dit bedrijf bouwen ze samen aan het succes, hun medewerkers staan hierbij centraal. Als ervaren PHP ontwikkelaar werk je in een enthousiast en informeel team

Bekijk vacature »

Fullstack .NET Ontwikkelaar

Organisatie Voor een van onze business partners in regio Utrecht zijn we op zoek naar een full-stack .NET developer die intern bij onze partner aan de slag gaat. Deze hippe club is al zo’n 20 jaar actief bezig om innovatie binnen de bouwsector centraal te stellen. Om deze innovatie te realiseren, wordt er gewerkt vanuit een enorm kleurrijk pand waarbinnen veel ruimtes zijn om je even terug te trekken en jouw creativiteit de vrije loop te laten. Door de informele setting voelt jouw werkplek aan als woonkamer, waarbij je in de middag met z’n allen samen komt om de verzorgde

Bekijk vacature »

PHP Developer voor internationale organisatie met

Vacature Omschrijving De missie van deze organisatie in Amsterdam is om een toonaangevende speler te worden op de illiquide markten voor milieugrondstoffen en schuldkapitaal. Zij doen dit gezamenlijk met hun klanten over de gehele wereld door samen te kijken naar de kansen en behoeften in de desbetreffende regio. Met een zeer open en niet-hiërarchische sfeer verwelkomen ze dagelijks internationale collega’s. Mensen die actief willen bijdragen aan het succesvolle bedrijf worden met open armen ontvangen, waarna nieuwe zakelijke kansen vol worden benut. Functieomschrijving Jij gaat je als PHP developer, Full-Stack, bezighouden met de ontwikkeling van bestaande en nieuwe producten. Alles wat

Bekijk vacature »

Junior PHP Talent

Voor een van mijn businesspartners in de regio Woerden ben ik op zoek naar een ervaren junior PHP developer. Organisatie Dit bedrijf is 20 jaar geleden ontstaan om alles omtrent de energie in je woning te automatiseren. Waar voorheen een kaart werd gebruikt om de meterstanden door te geven is dat door dit bedrijf volledig digitaal gemaakt in Nederland. Omdat het zo’n uniek product is in Nederland zijn alle energiemaatschappijen klant van hun en zijn ze marktleider op dit gebied. Daarnaast hebben ze een planningstool ontwikkelt voor de onderhoudsmonteurs en deze zijn ze verder door aan het ontwikkelen om deze

Bekijk vacature »

Junior C# developer

Creatieve junior C#-developer gezocht in Amersfoort Dit in Amersfoort gevestigde bedrijf maakt wat anderen niet kunnen. Deze organisatie is niet alleen gespecialiseerd in het bouwen van applicaties en systeemintegraties. Ze verwerken en verzamelen ook nog eens data die hun klanten kunnen gebruiken voor diverse interne en externe processen. Dit levert het bedrijf een bijzondere luxepositie op, die heeft geleid tot groeiplannen voor de nabije toekomst. Als developer kom je terecht in een informele organisatie met korte lijnen. Het hechte team waar je deel van uitmaakt, luncht bijvoorbeeld gezamenlijk. Ook ga je regelmatig met de hele organisatie op pad om samen

Bekijk vacature »

Full Stack .NET Developer

Organisatie Wil jij werken bij een informele organisatie die marktleider is op het gebied van maatwerk en generieke oplossingen binnen de E-Commerce? Stel je eens voor, een bedrijf waar diversiteit centraal staat en dit binnen verschillende aspecten in het bedrijf terugkomt. Werken op projectbasis aan verschillende projecten voor klanten uit de bouw, Automotive of groothandels. Willen hun producten blijvend innoveren en maken hierbij altijd gebruik van de nieuwste technieken binnen de .NET stack. Het bedrijf bevindt zich in een modern kantoorpand met prachtig uitzicht op de Neder-Rijn. Je loopt het pand binnen en voelt gelijk de energie door het gebruik

Bekijk vacature »

Senior Business Analist BI

Dümmen Orange is ’s werelds grootste veredelaar en kweker van snijbloemen, bollen, tropische planten, potplanten, perkplanten en vaste planten. Voor onze locatie in De Lier zoeken wij een Senior Business Analist BI. Functie inhoud De BI omgeving is voor Dümmen Orange van essentieel belang en levert een totaal beeld over de diverse entiteiten en applicaties. Door zowel acquisities en interne ontwikkelingen wijzigt het interne applicatielandschap regelmatig. Dit heeft direct impact op onze Data Warehouse en ook de informatiebehoefte waar BI in voorziet. Als Senior Business Analist BI wordt je de team-lead van het BI team dat naast jou bestaat uit

Bekijk vacature »

PHP kans met mogelijkheid tot auto!

PHP functie 3 jaar met Zend Functieomschrijving Je gaat met je team werken aan hele slimme nieuw op te zetten PHP applicaties voor professionele bedrijven. Omdat ze steeds voorop willen blijven lopen is er voor jou veel ruimte om te pionieren met nieuwe technologie en hierin verder te groeien als PHP developer. Naast het werken met nieuwe technologie zijn de voorwaarden ook heel goed, denk aan lekker veel vakantiedagen, goede regelingen en een mooie werkplek om het beste uit jezelf te halen. Om voor deze rol in aanmerking te komen dien je ervaring te hebben met Symfony2, Zend of een

Bekijk vacature »

Junior / Medior / Senior PHP Developer (Symfony)

Functieomschrijving Je komt te werken in een sterk team van 5 collega's in een Scrum omgeving. Je werkt hier aan zowel nieuwe als bestaande applicaties voornamelijk aan de Back-end. Je De producten die ze opleveren zien er strak uit, zitten kwalitatief goed in elkaar en zijn goed getest. Ze hebben diverse eigen software bedacht en ontwikkeld zodat ze erg flexibel zijn wanneer er aanpassingen nodig zijn aan een systeem. Ze zijn continue naar verbetering die hun producten of processen verbeteren. Deze organisatie helpt je om een betere developer te worden. Collega's delen hier kennis met elkaar en je krijgt opleidingsmogelijkheden

Bekijk vacature »

BPM Developer

BPM Company (bpmcompany.nl) is vanwege groei op zoek naar BPM Developers. Als BPM Developer werk je op het snijvlak van techniek en consultancy en ben je bezig met het bouwen en implementeren van software met het BPM platform van Pegasystems. Je werkt veelal op locatie van de klant en je bent tevens “trusted advisor” voor de klant. BPM Company is partner van Pegasystems en al onze Consultants zijn door Pegasystems gecertificeerd. BPM Company is in 2011 opgericht en bestaat momenteel uit ruim 50 medewerkers. De afgelopen 4 jaar was BPM Company genomineerd voor de FD Gazelle Award voor de snelst

Bekijk vacature »

PHP/ Laravel developer gezocht!

Organisatie Dit jong, dynamisch, ambitieus bedrijf is op zoek naar een ervaren programmeur op het gebied van webapplicaties. Hier werken uitsluitend ICT talenten die van hun hobby hun beroep hebben gemaakt. Zij zijn begonnen in 2002 met een klein handje vol klanten en zijn inmiddels uitgegroeid tot een volwassen ICT bedrijf met een breed en divers palet aan opdrachtgevers. Met een multidisciplinair team en de samenwerking met een select aantal professionele partners zijn zij in staat te helpen bij vrijwel alle IT gerelateerde zaken waarmee een organisatie te maken krijgt. Met ruim 20 gezellige maar professionele collega’s zorgen zij er

Bekijk vacature »
Sandy vangeebergen

sandy vangeebergen

21/07/2019 16:31:21
Quote Anchor link
hallo

ik ben in het bezit van een uitgebreide Java script die bepaalde woorden op zoekt en dan daar een hyperlink rond maakt die gekopelt staat in een andere boek maar ik bezit nu een nieuwere versie van die boek en krijg ze niet gekoppeld in de nieuwe versie kan iemand mij daar bij helpen?
 
PHP hulp

PHP hulp

21/09/2019 22:14:39
 
- Ariën -
Beheerder

- Ariën -

21/07/2019 16:57:14
Quote Anchor link
Waar loopt je op vast? Kan je wat relevante code laten zien? En bij voorkeur op JSfiddle?
 
Sandy vangeebergen

sandy vangeebergen

21/07/2019 17:00:20
Quote Anchor link
dit is de java script
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
if (app.viewerVersion < 10) {
                app.addMenuItem({ cName: "AddLinksToBible", cUser: "Add Links To Bible", cParent: "Tools", nPos: -1,
                               cExec: "addLinksToBible()", cEnable: "event.rc = (event.target != null);"});
                app.addMenuItem({ cName: "DiscloseFile", cUser: "Disclose File", cParent: "Tools", nPos: 0,
                               cExec: "discloseFile()", cEnable: "event.rc = (event.target != null);"});
} else {
                app.addToolButton({ cName: "AddLinksToBible", cLabel: "Add Links To Bible", cTooltext: "Add Links To Bible",
                               cExec: "addLinksToBible()", cEnable: "event.rc = (event.target != null);"});
                app.addToolButton({ cName: "DiscloseFile", cLabel: "Disclose File", cTooltext: "Disclose File",
                               cExec: "discloseFile()", cEnable: "event.rc = (event.target != null);"});
                app.addToolButton({ cName: "OffsetLinks", cLabel: "Offset Links", cTooltext: "Offset Links",
                               cExec: "offsetLinks()", cEnable: "event.rc = (event.target != null);"});
}
 
var booksFullNames = ["Genesis", "Exodus", "Leviticus", "Numeri", "Deuteronomium", "Jozua", "Rechters", "Ruth", "1Samul", "2Samul",
                "1Koningen", "2Koningen", "1Kronieken", "2Kronieken", "Ezra", "Nehemia", "Esther", "Job", "Psalm", "Spreuken", "Prediker",
                "Hooglied", "Jesaja", "Jeremia", "Klaagliederen", "Ezechil", "Danil", "Hosea", "Jol", "Amos", "Obadja", "Jona", "Micha", "Nahum",
                "Habakuk", "Zefanja", "Hagga", "Zacharia", "Maleachi",
                "Matthes", "Markus", "Lukas", "Johannes", "Handelingen", "Romeinen", "1Korinthirs", "2Korinthirs", "Galaten",
                "Efezirs", "Filippenzen", "Kolossenzen", "1Thessalonicenzen", "2Thessalonicenzen", "1Timothes", "2Timothes", "Titus", "Filemon",
                "Hebreen", "Jakobus", "1Petrus", "2Petrus", "1Johannes", "2Johannes", "3Johannes", "Judas", "Openbaring"
];
 
var booksMediumNames = [
                "Gen", "Ex", "Lev", "Num", "Deut", "Joz", "Rechters", "Ruth", "1Sam", "2Sam",
                "1Kon", "2Kon", "1Kron", "2Kron", "Ezra", "Neh", "Esth", "Job", "Ps", "Spr", "Pred",
                "Hoogl", "Jes", "Jer", "Klaagl", "Ezech", "Dan", "Hos", "Jol", "Amos", "Obadja", "Jona", "Micha", "Nahum",
                "Hab", "Zef", "Hag", "Zach", "Mal",
                "Matth", "Mark", "Luk", "Joh", "Hand", "Rom", "1Kor", "2Kor", "Gal",
                "Ef", "Fil", "Kol", "1Thess", "2Thess", "1Tim", "2Tim", "Tit", "Filem",
                "Hebr", "Jak", "1Petr", "2Petr", "1Joh", "2Joh", "3Joh", "Jud", "Openb"
];
 
var booksShortNames = [ "Ge", "Ex", "Le", "Nu", "De", "Joz", "Re", "Ru", "1Sa", "2Sa",
                "1Kon", "2Kon", "1Kr", "2Kr", "Ezr", "Ne", "Es", "Job", "Ps", "Sp", "Pr",
                "Hgl", "Jes", "Jer", "Klg", "Ez", "Da", "Ho", "Jo", "Am", "Ob", "Jon", "Mi", "Na",
                "Hab", "Ze", "Hag", "Za", "Mal",
                "Mt", "Mr", "Lu", "Jo", "Han", "Ro", "1Kor", "2Kor", "Ga",
                "Ef", "Fil", "Kol", "1Th", "2Th", "1Ti", "2Ti", "Tit", "Flm",
                "Heb", "Jak", "1Pe", "2Pe", "1Jo", "2Jo", "3Jo", "Ju", "Opb"
];
 
var namedDests = ["Ge", "Ex", "Le", "Nu", "De", "Joz", "Re", "Ru", "1Sa", "2Sa",
                "1Kon", "2Kon", "1Kr", "2Kr", "Ezr", "Ne", "Es", "Job", "Ps", "Sp", "Pr",
                "Hgl", "Jes", "Jer", "Klg", "Ez", "Da", "Ho", "Joe", "Am", "Ob", "Jon",
                "Mi", "Na", "Hab", "Ze", "Hag", "Za", "Mal",
                "Mt", "Mr", "Lu", "Jo", "Han", "Ro", "1Kor", "2Kor", "Ga", "Ef", "Fil", "Kol",
                "1Th", "2Th", "1Ti", "2Ti", "Tit", "Flm", "Heb", "Jak", "1Pe", "2Pe",
                "1Jo", "2Jo", "3Jo", "Ju", "Opb"
];
 
function discloseFile() {
                this.addScript("init", "this.disclosed=true;");
                app.alert("Done.",3);
}
 
function offsetLinks() {
                var resp = app.response("Enter the offset (in points):","", "16");
                if (resp==null || resp=="" || isNaN(+resp)) return;
                var offset = +resp;
                for (var i=0; i<this.numFields; i++) {
                               var f = this.getField(this.getNthFieldName(i));
                               if (f==null) continue;
                               if (f.type=="button" && /^_/.test(f.name)) {
                                               var r = f.rect;
                                               r[0]-=offset;
                                               r[1]-=offset;
                                               r[2]-=offset;
                                               r[3]-=offset;
                                               f.rect = r;
                               }
                }
                app.alert("Done.",3);
}
 
//addLinksToBible(2,9,9);
function addLinksToBible() {
 
                var mode, firstPage, lastPage;
                var dialog1 = {
 
                               initialize: function (dialog) {
                                               dialog.load({
                                                               rad1: true,
                                                               txt1: "1",
                                                               txt2: ""+this.parentDoc.numPages,
                                               })
                               },
 
                               cancel: function(dialog) {
                                               return;
                               },
 
                               destroy: function(dialog) {
                                               return;
                               },
 
                               commit:function (dialog) {
                                               var results = dialog.store();
                                               if (results["rad1"]) mode = 1;
                                               else if (results["rad2"]) mode = 2;
                                               else if (results["rad3"]) mode = 3;
                                              
                                               firstPage = Number(results["txt1"])-1;
                                               lastPage = Number(results["txt2"])-1;
                                               return;
                               },
 
                               validate:function (dialog) {
                                               var results = dialog.store();
                                               if (results["rad1"]==false && results["rad2"]==false && results["rad3"]==false) {
                                                               app.alert("You must select the book names mode.");
                                                               return false;
                                               }
                                               if (results["txt1"]==null || results["txt1"]=="" || isNaN(+results["txt1"]) ||
                                                               results["txt2"]==null || results["txt2"]=="" || isNaN(+results["txt2"])) {
                                                               app.alert("Invalid page range.");
                                                               return false;
                                               }
                                               return true;
                               },
 
                               description: {
                                               name: "",
                                               align_children: "align_left",
                                               width: 350,
                                               height: 100,
                                               elements:[
                                                               {
                                                                              type: "cluster",
                                                                              name: "Add Bible Links",
                                                                              align_children: "align_left",
                                                                              elements:[
                                                                              {
                                                                                              type: "static_text",
                                                                                              name: "Select the type of book names:"
                                                                              },
                                                                              {
                                                                                              type: "view",
                                                                                              align_children: "align_distribute",
                                                                                              elements:[
                                                                                                              {                                                                                                                            
                                                                                                                             group_id: "mode",
                                                                                                                             item_id: "rad1",
                                                                                                                             type: "radio",
                                                                                                                             name: "Short names",
                                                                                                                             width: 20,
                                                                                                                             height: 20,
                                                                                                              },
                                                                                                              {                                                                                                                            
                                                                                                                             group_id: "mode",
                                                                                                                             item_id: "rad2",
                                                                                                                             type: "radio",
                                                                                                                             name: "Medium names",
                                                                                                                             width: 20,
                                                                                                                             height: 20,
                                                                                                              },
                                                                                                              {                                                                                                                            
                                                                                                                             group_id: "mode",
                                                                                                                             item_id: "rad3",
                                                                                                                             type: "radio",
                                                                                                                             name: "Long names",
                                                                                                                             width: 20,
                                                                                                                             height: 20,
                                                                                                              }
                                                                                                              
                                                                                              ]
                                                                              },
                                                                              {
                                                                                              type: "static_text",
                                                                                              name: "Which pages to process:"
                                                                              },
                                                                              {
                                                                                              type: "view",
                                                                                              align_children: "align_distribute",
                                                                                              elements:[
                                                                                                              {
                                                                                                                             item_id: "txt1",
                                                                                                                             type: "edit_text",
                                                                                                                             width: 40,
                                                                                                              },
                                                                                                              {
                                                                                                                             type: "static_text",
                                                                                                                             name: "-"
                                                                                                              },
                                                                                                              {
                                                                                                                             item_id: "txt2",
                                                                                                                             type: "edit_text",
                                                                                                                             width: 40,
                                                                                                              }
                                                                                              ]
                                                                              },
                                                                              { type: "gap"},
                                                                              {
                                                                                              alignment: "align_right",
                                                                                              type: "ok_cancel",
                                                                                              ok_name: "OK",
                                                                                              cancel_name: "Cancel"
                                                                              },
                                                                              ]
                                                               },
                                               ]
                               }
                };
 
                dialog1.parentDoc = this;
                if (app.execDialog(dialog1)!="ok") {return};
 
                function openBibleLink() {
                               var bibleFileName = "2006 'bi' BIJBEL genootsch";
                               var bibleDoc = app.openDoc({cPath: bibleFileName, oDoc: this, cDest: event.target.name});
                               if (bibleDoc==null) {
                                               app.alert("Error! Can't locate the bible file: " + bibleFileName);
                                               return;
                               }
                }
 
                var bookNames;
                if (mode==1) { // short names
                               bookNames = [].concat(booksShortNames);
                } else if (mode==2) { // medium names
                               bookNames = [].concat(booksMediumNames);
                } else if (mode==3) { // full names
                               bookNames = [].concat(booksFullNames);
                }
                for (var i in bookNames) bookNames[i]=bookNames[i].toLowerCase();
                //console.println(bookNames);
                
                var startTime = new Date();
                var t = app.thermometer;
                t.duration = (lastPage - firstPage);
                t.begin();
                var counter = 0;
                //console.clear();
                for (var p=firstPage; p<=lastPage; p++) {
                               console.println("Processing page #"+p);
                               t.value = (p-firstPage)+1;
                               t.text = "Processing page " + ((p-firstPage)+1) + "/" + ((lastPage - firstPage)+1);
                               var numWords = this.getPageNumWords(p);
                               for (var i=0; i<numWords-2; i++) {
                                               //console.println("Processing word #"+i);
                                               var word  = this.getPageNthWord(p,i,true).toLowerCase();
                                               word = word.replace(/^\(/,"");
                                               var wordFull = this.getPageNthWord(p,i,false);
                                               var wordRect = convertWordQuadsToRect(this, p, i);
                                              
                                               if (bookNames.indexOf(word)==-1 || bookNames.indexOf(word)==42) {
                                                               var prevWord = "";
                                                               if (i>0) prevWord=this.getPageNthWord(p,i-1,true).toLowerCase();
                                                               if (prevWord!="" && /^\d$/.test(prevWord)) {
                                                                              word = prevWord+word;
                                                                              var prevWordRect = convertWordQuadsToRect(this, p, i-1);
                                                                              wordRect[0] = prevWordRect[0];
                                                               }
                                               }                                            
                                              
                                               word = word.replace(/^\(/,"");
                                              
                                               //console.println("word: " + word);
                                               if (bookNames.indexOf(word)!=-1) {
                                                               //console.println("MATCH");
                                                               var word1 = this.getPageNthWord(p,i+1,true).toLowerCase();
                                                               var word2 = this.getPageNthWord(p,i+2,true).toLowerCase();
                                                               if (/^\d+$/.test(word1)) {
                                                                              if (/^\d+$/.test(word2)) {
                                                                                              //var r1 = convertWordQuadsToRect(this, p, i);
                                                                                              var r2 = convertWordQuadsToRect(this, p, i+2);
                                                                                              var r;
                                                                                              if (wordRect[1]==r2[1]) {
                                                                                                              r = [wordRect[0],wordRect[1],r2[2],wordRect[3]];
                                                                                                              createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                              }
                                                                                              else {
                                                                                                              r = [wordRect[0],wordRect[1],wordRect[2],wordRect[3]];
                                                                                                              createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                                              var r3 = convertWordQuadsToRect(this, p, i+1);
                                                                                                              r = [r3[0],r3[1],r2[2],r3[3]];
                                                                                                              createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                              }
                                                                                              counter++;
                                                                              } else {
                                                                                              //var r1 = convertWordQuadsToRect(this, p, i);
                                                                                              var r2 = convertWordQuadsToRect(this, p, i+1);
                                                                                              r = [wordRect[0],wordRect[1],r2[2],wordRect[3]];
                                                                                              createBibleLink(this, p, r, word, word1, "", bookNames);
                                                                                              counter++;
                                                                              }
                                                               }
                                               } else if (wordFull==" " || wordFull=="") {
                                                               //console.println(i+":"+wordFull)
                                                               word = this.getPageNthWord(p,i-1,true).toLowerCase();
                                                               if (/u$/.test(word)) {
                                                                              word = word.replace(/u$/, "");
                                                               }
                                                               word+=this.getPageNthWord(p,i+1,true).toLowerCase();
                                                               word = word.replace(/\s/g,"");
                                                               //console.println("full word: " + word);
                                                               if (bookNames.indexOf(word)!=-1) {
                                                                              i++;
                                                                              //console.println("MATCH");
                                                                              wordRect = convertWordQuadsToRect(this, p, i-2);
                                                                              var word1 = this.getPageNthWord(p,i+1,true).toLowerCase();
                                                                              var word2 = this.getPageNthWord(p,i+2,true).toLowerCase();
                                                                              if (/^\d+$/.test(word1)) {
                                                                                              if (/^\d+$/.test(word2)) {
                                                                                                              //var r1 = convertWordQuadsToRect(this, p, i);
                                                                                                              var r2 = convertWordQuadsToRect(this, p, i+2);
                                                                                                              var r;
                                                                                                              if (wordRect[1]==r2[1]) {
                                                                                                                             r = [wordRect[0],wordRect[1],r2[2],wordRect[3]];
                                                                                                                             createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                                              }
                                                                                                              else {
                                                                                                                             r = [wordRect[0],wordRect[1],wordRect[2],wordRect[3]];
                                                                                                                             createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                                                             var r3 = convertWordQuadsToRect(this, p, i+1);
                                                                                                                             r = [r3[0],r3[1],r2[2],r3[3]];
                                                                                                                             createBibleLink(this, p, r, word, word1, word2, bookNames);
                                                                                                              }
                                                                                                              counter++;
                                                                                              } else {
                                                                                                              //var r1 = convertWordQuadsToRect(this, p, i);
                                                                                                              var r2 = convertWordQuadsToRect(this, p, i+1);
                                                                                                              r = [wordRect[0],wordRect[1],r2[2],wordRect[3]];
                                                                                                              createBibleLink(this, p, r, word, word1, "", bookNames);
                                                                                                              counter++;
                                                                                              }
                                                                              }
                                                               }
                                               } else {
                                                               // in case the book name and chapter number are connected
                                                               for (var j in bookNames) {
                                                                              var reg = new RegExp("^"+bookNames[j]+"\\d+");
                                                                              if (reg.test(word)) {
                                                                                              var word1 = this.getPageNthWord(p,i+1,true).toLowerCase();
                                                                                              if (/^\d+$/.test(word1)) {
                                                                                                              var chapterNumber = word.match(/\d+$/)[0];
                                                                                                              var bookName = word.replace(new RegExp(chapterNumber+"$"),"");
                                                                                                              //var r1 = convertWordQuadsToRect(this, p, i);
                                                                                                              var r2 = convertWordQuadsToRect(this, p, i+1);
                                                                                                              r = [wordRect[0],wordRect[1],r2[2],wordRect[3]];
                                                                                                              createBibleLink(this, p, r, bookName, chapterNumber, word1, bookNames);
                                                                                                              counter++;
                                                                                              }
                                                                                              break;
                                                                              }
                                                               }
                                               }
                               }
                }
                t.end();
                var endTime = new Date();
                //console.println("Run time: " + ((endTime-startTime)/1000));
                
                this.addScript("BibleLinks", openBibleLink);
                app.alert("Done. " + counter + " links were created.",3);
 
}
 
function createBibleLink(doc, p, r, book, chapter, verse, bookNames) {
                var bookIndex = bookNames.indexOf(book);
                if (bookIndex==-1) {
                               console.println("Error! Could not locate the index for: " + book);
                               return false;
                }
                
                /*var pageCropBox = doc.getPageBox("Crop", p);
                var pageBBox = doc.getPageBox("BBox", p);
                var xOffset = pageBBox[0]-pageCropBox[0];
                var yOffset = pageBBox[1]-pageCropBox[1];
                console.println("xOffset:"+xOffset);
                console.println("yOffset:"+yOffset);*/
                /*xOffset = 16;
                yOffset = 16;
                r[0]-=xOffset;
                r[2]-=xOffset;
                r[1]-=yOffset;
                r[3]-=yOffset;*/
                
                var bookDestName = namedDests[bookIndex]
                var destName = bookDestName+"_"+chapter;
                if (verse!=null && verse!="" && verse!="1")
                               destName+="_"+verse;
                var f = doc.addField(destName, "button", p, r);
                f.setAction("MouseUp", "openBibleLink()");
                f.lineWidth = 0;
                //f.strokeColor = color.ltGray;
                f.userName = "Click to jump to this location in the Bible file.";
}
 
function convertWordQuadsToRect(doc, p, i) {
                return convertQuadsToRect(doc, p, doc.getPageNthWordQuads(p, i));
}
 
 
function convertQuadsToRect(doc, p, q) {
                var m = (new Matrix2D).fromRotated(doc,p);
                var mInv = m.invert()
                var r = mInv.transform(q)
                r = r.toString()
                r = r.split(",");
                return [+r[4], +r[3], +r[2], +r[5]];
}


de boek waar hij naar moet verwijzen is een andere maar als ik deze naam veranderd doet hij niks

Edit:
code-tags geplaatst. Gelieve dit voortaan zelf te doen.
Gewijzigd op 22/07/2019 15:35:18 door - Ariën -
 
- Ariën -
Beheerder

- Ariën -

21/07/2019 17:03:38
Quote Anchor link
Ik snap dat je graag geholpen wilt worden, maar ik en anderen hebbem geen zin om 403 regels aan code door te ploegen. Kan je het inkorten tot relevante code van +/- 20 regels? Zet ze dan ook graag tussen code-tags die we hier op het forum hebben, dan is het beter leesbaar.

Ook is nog niet echt duidelijk wat je precies doet en wat er gebeurt.
Gewijzigd op 21/07/2019 17:09:01 door - Ariën -
 
Sandy vangeebergen

sandy vangeebergen

21/07/2019 17:10:12
Quote Anchor link
ik wil het wel doen maar ken niks van java script dus weet zeker niet wat ik mag weggooien in de script.
ik heb deze scrip gekregen via via en de regel waar

function openBibleLink() {
var bibleFileName = "2006 'bi' BIJBEL genootsch";
var bibleDoc = app.openDoc({cPath: bibleFileName, oDoc: this, cDest: event.target.name});
if (bibleDoc==null) {
app.alert("Error! Can't locate the bible file: " + bibleFileName);
return;

staat moet veranderd worden want "2006 'bi' BIJBEL genootsch" is nu een andere boek en als ik de boek naam aanpas
in "nwt_O.pdf" doet hij het nog niet.
daarom de vraag of smeking hier.
 
Rob Doemaarwat

Rob Doemaarwat

21/07/2019 17:18:28
Quote Anchor link
Stapje terug: je hebt een boek, waarin het script links aanmaakt naar een ander boek (de bijbel). Welk boek is nu nieuw: het boek waarin je leest en de links in aanbrengt, of de bijbel waar je naartoe wilt verwijzen?

En waar komt die "app" variabele vandaan (met name: wat doet app.openDoc; ik zie iets met een Adobe lib voorbij komen op de internets - is dat 'm; en hoe weet die lib waar "2006 'bi' BIJBEL genootsch" is te vinden - wat is dat: een HTML pagina of een PDF)?

Toevoeging op 21/07/2019 17:20:17:

Misschien enkel "nwt_O" (zonder de ".pdf" - net zoals bij "2006 'bi' BIJBEL genootsch")?
Gewijzigd op 21/07/2019 17:21:45 door Rob Doemaarwat
 
Sandy vangeebergen

sandy vangeebergen

21/07/2019 17:26:34
Quote Anchor link
de nieuwe boek waar hij naar verwijs is nieuw
dus voor de duidelijkheid
in boek 1 worden er links aangemaakt met de java script en deze worden verwezen naar boek 2 de ( nieuwe bijbel)
de 2 boeken zijn PDF's
de oude bijbel was 2006 bi BIJBEL genootsch
 
Eddy E

Eddy E

22/07/2019 18:45:02
Quote Anchor link
Wellicht een gek idee, maar waarom moet dit dynamisch?
De Bijbel wijzigt nou niet echt frequent qua opbouw/inhoud etc.
Als het alleen maar een link aanpassen is; waarom dan niet eenmalig met een CTRL + H in je editor doen?
 
Sandy vangeebergen

sandy vangeebergen

23/07/2019 09:56:30
Quote Anchor link
dag eddy

uw redenatie klopt wel, maar het is om de lees boek die moet steeds naar de bijbel verwijzen, en deze word steeds nieuw.
Daarom dynamisch, ik verlies veel tijd om steeds dit manueel te moeten doen
 
- Ariën -
Beheerder

- Ariën -

23/07/2019 10:01:34
Quote Anchor link
En met welke reden is er gekozen om het integraal in Javascript te doen? Kan je misschien een voorbeeld op JSfiddle of een testsite plaatsen?
Gewijzigd op 23/07/2019 10:01:58 door - Ariën -
 
Sandy vangeebergen

sandy vangeebergen

23/07/2019 10:07:34
Quote Anchor link
ik heb het zelf niet gemaakt ik ken niks van scrips iemand had dat aan mij gegeven maar hij had het ook gekregen van iemand maar we weten niet s-wie het gemaakt heeft.
van mij mag het gemaakt worden in een andere vorm als het maar doet.
ps ik heb eens de scrip op JSfiddle gezet hier de link
https://jsfiddle.net/sg73ubxv/
 
- Ariën -
Beheerder

- Ariën -

23/07/2019 10:17:20
Quote Anchor link
Moet je het wel goed op JSfiddle zetten, in het JS-veld en met de juiste HTML zodat het werkt ;-)
 
Sandy vangeebergen

sandy vangeebergen

23/07/2019 10:19:16
Quote Anchor link
is dit dan juist??

https://jsfiddle.net/s10wpbde/
 
- Ariën -
Beheerder

- Ariën -

23/07/2019 10:45:10
Quote Anchor link
Als we het in werking kunnen zien, maak anders een testsite met het script erop aan.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.