diff options
| author | Greg Roach <fisharebest@gmail.com> | 2014-02-23 14:49:58 +0000 |
|---|---|---|
| committer | Greg Roach <fisharebest@gmail.com> | 2014-02-23 14:49:58 +0000 |
| commit | 189a77fc69ce1faa963dfbe570bfb3a3ebb6fac4 (patch) | |
| tree | 853f4b17abbb0b2064c313c2f5e4fe3cfcc09347 | |
| parent | dee177e2f1cf1f18115d5f4e2b89a408bef4aa62 (diff) | |
| parent | bcf7773d2328706f10c400933bad7c41d0c3accb (diff) | |
| download | webtrees-189a77fc69ce1faa963dfbe570bfb3a3ebb6fac4.tar.gz webtrees-189a77fc69ce1faa963dfbe570bfb3a3ebb6fac4.tar.bz2 webtrees-189a77fc69ce1faa963dfbe570bfb3a3ebb6fac4.zip | |
Merge pull request #113 from mnoorenberghe/findWindow_refactor
Refactor find functions for find.php to use a common findWindow function
| -rw-r--r-- | js/webtrees-1.5.2.js | 65 |
1 files changed, 25 insertions, 40 deletions
diff --git a/js/webtrees-1.5.2.js b/js/webtrees-1.5.2.js index d708354189..e97f0959dc 100644 --- a/js/webtrees-1.5.2.js +++ b/js/webtrees-1.5.2.js @@ -1335,71 +1335,56 @@ function cal_dateClicked(dateFieldId, dateDivId, year, month, day) { return false; } -function findIndi(field, indiname, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - nameElement = indiname; - window.open('find.php?type=indi&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); +function findWindow(ged, type, pastefield, queryParams) { + queryParams = queryParams || {}; + queryParams.type = type; + queryParams.ged = typeof ged === 'undefined' ? WT_GEDCOM : ged; + window.pastefield = pastefield; + window.open('find.php?' + jQuery.param(queryParams), '_blank', find_window_specs); return false; } +function findIndi(field, indiname, ged) { + window.nameElement = indiname; + return findWindow(ged, "indi", field); +} + function findPlace(field, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - window.open('find.php?type=place&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + return findWindow(ged, "place", field); } function findFamily(field, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - window.open('find.php?type=fam&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + return findWindow(ged, "fam", field); } function findMedia(field, choose, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - if (!choose) choose="0all"; - window.open('find.php?type=media&choose=' + encodeURIComponent(choose) + '&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + return findWindow(ged, "media", field, { + "choose": choose || "0all" + }); } function findSource(field, sourcename, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - nameElement = sourcename; - window.open('find.php?type=source&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + window.nameElement = sourcename; + return findWindow(ged, "source", field); } function findnote(field, notename, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - nameElement = notename; - window.open('find.php?type=note&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + window.nameElement = notename; + return findWindow(ged, "note", field); } function findRepository(field, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - window.open('find.php?type=repo&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + return findWindow(ged, "repo", field); } function findSpecialChar(field) { - pastefield = field; - window.open('find.php?type=specialchar', '_blank', find_window_specs); - return false; + return findWindow(undefined, "specialchar", field); } function findFact(field, ged) { - ged = (typeof ged === 'undefined') ? WT_GEDCOM : ged; - pastefield = field; - tags = field.value; - window.open('find.php?type=facts&tags=' + encodeURIComponent(tags) + '&ged=' + encodeURIComponent(ged), '_blank', find_window_specs); - return false; + return findWindow(ged, "facts", field, { + "tags": field.value + }); } function ilinkitem(mediaid, type, ged) { |
