PageSourceSearch

https://www.dmgmori.co.jp/files/js/front/user/syncsearch/ss_config.js?v=1728322353

js dmgmori.co.jp collected 2026-10-02 04:24:49 UTC 15,512 bytes, 342 lines download raw bytes

1var ssConfig = {
2	site: ssConfigOptions.site,
3	base: 'syncsearch',
4	search: {
5		group: ssConfigOptions.group,
6		charset: 'utf-8',
7		count: 10,
8		inputHitCount: {
9			type: 'radio',
10			count: [10, 20, 30],
11			className: '',
12			suffix: ''
13		},
14		paginationSize: 10,
15		align: 'center',
16		dateFormat: 'yyyy年MM月dd日',
17		opacityTime: 500,
18		summaryLength: 200,
19//		summaryHead: true,
20		theme: 'gray',
21		loadingAnimation: false,
22		templates: {},
23		groupFieldType: 'radio',
24		groupLimit: [],
25		useItemPicture: true,
26		totalHitsComma: true,
27		keywordRanking: {
28			enable: false,
29			displayableCount: 1,
30			baseUrl: 'https://cdn.syncsearch.jp/keyrank',
31			fileName: 'ranking_result_utf8.js'
32		},
33		relateWords: {
34			size: 5,
35			type: 'log'
36		},
37		facet: {
38			type: 'radio',
39			countPrefix: '(',
40			countSuffix: ')',
41			ulClass: '',
42			liClass: '',
43			showZero: true,
44			showContentPosition: 'left',
45			refresh: true,
46			resetLabel: 'Reset selection',
47			resetLabelPosition: 'top'
48		},
49		multiViews: [
50			// {
51			// 	id: 'ss-multi-1',
52			// 	viewTitle: 'グループ1',
53			// 	group: '0',
54			// 	category: 'none',
55			// 	sort: '',
56			// 	reverse: '',
57			// 	count: 5,
58			// 	summaryLength: 50,
59			// 	templates: {}
60			// }
61		]
62	},
63	image: {
64		popup: false,
65		popupItemPicture: true,
66		adPosition: 2,
67		thumbPosition: 2,
68		templates: {},
69		useScrollBlock: false
70	},
71	suggest: {
72		forms: [
73			{
74				id: '', //ss-form, ss-query
75				group: ssConfigOptions.group,
76				depth: 3
77			}
78		],
79		depth: 3,
80		wmModeExcludes: '',
81		cssPath: '/files/css/front/user/syncsearch/ss_suggest.css',
82		templates: {}
83	},
84	useIpv6Domain:false
85};
86
87let search_button_txt = 'Seach';
88let place_holder_txt = 'Seach by words';
89let select_all_txt = 'Select all';
90let search_result = 'Search result';
91let add_filters_txt = 'Add filters';
92let research_button_txt = 'Add filters';
93let search_words_by_txt = 'Search results of "<b>{{query}}</b>"';
94let search_hit_txt = ' of <b>{{total}}</b>results';
95let search_num_txt = 'Showing <b>{{start}}</b>-<b>{{end}}';
96let search_not_found_txt = '<div id="ss-not-found">' +
97	'No results found for <b>"{{query}}"</b>' +
98	'<div id="ss-hint">Search Tips:</div>' +
99	'<ul id="ss-hint-message">' +
100		'<li>Make sure all keywords are spelled correctly.</li>' +
101		'<li>Try another search with different keywords or simpler terms.</li>' +
102	'</ul>' +
103'</div>';
104if (search_lang=='ja') {
105	search_button_txt = '検索';
106	place_holder_txt = 'フリーワードで検索';
107	select_all_txt = 'すべて選択';
108	search_result = 'サイト内検索結果';
109	add_filters_txt = '検索結果絞込み';
110	research_button_txt = '再絞り込み';
111	search_words_by_txt = '<b>「{{query}}」</b>の検索結果';
112	search_hit_txt = '<b>{{total}}</b>件中';
113	search_num_txt = '<b>{{start}}</b>-<b>{{end}}</b>件を表示';
114	search_not_found_txt = '<div id="ss-not-found">' +
115	'<b>「{{query}}」</b>に一致するページは見つかりませんでした。' +
116	'<div id="ss-hint">検索のヒント:</div>' +
117	'<ul id="ss-hint-message">' +
118		'<li>キーワードに誤字・脱字がないか確認してください。</li>' +
119		'<li>別のキーワードを試してください。</li>' +
120		'<li>もっと一般的なキーワードに変えて検索してください。 </li>' +
121	'</ul>' +
122'</div>';
123}
124
125let toggle_class = 'ui_toggle isDisable';
126if (window.matchMedia('(max-width:767px)').matches) {
127	// SP
128	toggle_class = 'ui_toggle';
129}
130
131ssConfig.search.templates.form =
132'<div class="search-form"><form name="search" id="ss-form">' +
133	'<div class="search-form">' +
134		'<span class="input"><input type="text" value="{{query}}" name="query" id="ss-query" class="ss-search-input" maxlength="100" placeholder="' + place_holder_txt + '" autocomplete="off" aria-autocomplete="none" /></span>' +
135		'<input type="submit" class="ss-search-button" value="' + search_button_txt + '"  onclick="let query=document.getElementById(\'ss-query\').value;document.title=\'' + search_result + ' - \' + query + \' | DMG MORI\'; return true;"/>' +
136	'</div>' +
137	'<div class="ss-categories">{{category.default}}</div>' +
138	// '<div id="ss-keyword-ranking" class="ss-keyword-ranking" style="display: none;"><p class="ss-keyword-ranking-heading">よく検索されるキーワード</p></div>' +
139	// '<div class="ss-groups">{{groupFields}}</div>' +
140	// '<div class="ss-group-categories">{{groupFields.categoryFields}}</div>' +
141	'<div class="filtering" style="display: none">' +
142		'<dl class="' + toggle_class + '">' +
143			'<dt class="ui_toggle-trigger" onclick="const elm=document.getElementById(\'subcategory_list\');if(elm.style.display!=\'block\'){elm.style.display=\'block\';}else{elm.style.display=\'none\';}">' + add_filters_txt + '<span class="wrap-check-all">' +
144				'<input type="checkbox" class="check-all" id="check-all-dummy" data-checkbox-name="subcategory" value="" onclick="const all_checked=this.checked;document.querySelectorAll(\'.checkbox_item\').forEach(function(checkbox) {checkbox.checked = all_checked;});">' +
145				'<label for="check-all-dummy">' + select_all_txt + '</label></span>' +
146			'</dt>' +
147			'<dd id="subcategory_list" class="ui_toggle-content">' +
148				'<input type="checkbox" style="display: none;" checked="checked" name="subcategory" value="" id="SS_category1_subcategory_0" class="ss-extra-param">' +
149				'<ul id="SS_searchCategory1_subcategory" class="list-check-items">';
150Object.keys(subcategoryList).forEach(function (key) {
151	if (subcategoryList[key]) {
152		ssConfig.search.templates.form +='<li id="SS_categoryItem1_' + key + '"><input type="checkbox" name="subcategory" value="' + key + '" id="SS_category1_subcategory_' + key + '" class="checkbox_item ss-extra-param"><label for="SS_category1_subcategory_' + key + '">' + subcategoryList[key] + '</label></li>';
153	}
154});
155
156$(window).on('load', function() {
157    var cur_url = location.href;
158    var params = 'subcategory';
159    var check_item = $('#SS_searchCategory1_subcategory input.ss-extra-param');
160    if (cur_url.indexOf(params) !== -1) {
161      $('.filtering').css('display', 'block');
162    } else {
163      check_item.prop("checked", false).change();
164			$('.filtering').css('display', 'block');
165    }
166});
167
168ssConfig.search.templates.form +=
169				'</ul>' +
170				'<p class="sp-only u-pv-10"><button type="submit" class="btn-reload" onclick="let query=document.getElementById(\'ss-query\').value;document.title=\'' + search_result + ' - \' + query + \' | DMG MORI\'; return true;">' + research_button_txt + '</button></p>' +
171			'</dd>' +
172			'<dd class="pctb-only">' +
173				'<p><button type="submit" class="btn-reload" onclick="let query=document.getElementById(\'ss-query\').value;document.title=\'' + search_result + ' - \' + query + \' | DMG MORI\'; return true;">' + research_button_txt + '</button></p>' +
174			'</dd>' +
175		'</dl>' +
176	'</div>' +
177 '</form></div>'
178;
179
180ssConfig.search.templates.item =
181'<div class="ss-item">' +
182	'<div class="result">' +
183		'<p class="thumbnail">' +
184			'<a href="{{item.link}}"><img src="{{item.image}}" id="{{item.imageId}} width="268" height="167"></a>' +
185		'</p>' +
186		'<div class="page" data-subcategory="7">' +
187			'<p class="title"> <a href="{{item.link}}">{{item.title}}</a></p>' +
188			'<p class="summary">{{item.summary}}</p>' +
189		'</div>' +
190	'</div>' +
191'</div>';
192
193ssConfig.search.templates.aditem =
194'<div class="ss-ad-item">' +
195	'<div class="ss-ad-image"><a href="{{item.link}}"><img src="{{item.image}}" id="{{item.imageId}}" width="160" height="120"></a></div> ' +
196	'<div class="ss-ad-page">' +
197		'<h4 class="ss-ad-title"><a href="{{item.link}}">{{item.title}}</a></h4>' +
198		'<div class="ss-ad-summary">{{item.summary}}</div>' +
199		'<div class="ss-ad-url"><a href="{{item.link}}">{{item.url}}</a></div>' +
200	'</div>' +
201'</div>';
202
203ssConfig.search.templates.navigation =
204'<div>' +
205	'<div id="ss-navi">' +
206		'<div class="result-stats">' +
207			'<span id="ss-query-string" class="keyword">' + search_words_by_txt + '</span>';
208if (search_lang=='ja') {
209ssConfig.search.templates.navigation +=
210			'<span id="ss-total-hits" class="hits">' + search_hit_txt + '</span> ' +
211			'<span id="ss-show-counts" class="stats">' + search_num_txt + '</span>';
212} else {
213ssConfig.search.templates.navigation +=
214			'<span id="ss-show-counts" class="stats">' + search_num_txt + '</span>' +
215			'<span id="ss-total-hits" class="hits">' + search_hit_txt + '</span> ';
216}
217ssConfig.search.templates.navigation +=
218		'</div>' +
219	'</div>' +
220'</div>';
221
222ssConfig.search.templates.pagePrev =
223'<span class="ss-page-prev" data-start="{{start}}"><a href="#">Prev</a></span>';
224ssConfig.search.templates.pagination =
225'<span class="ss-page {{pageSelected}}" data-start="{{start}}"><a href="#">{{page}}</a></span>';
226ssConfig.search.templates.pageNext =
227'<span class="ss-page-next" data-start="{{start}}"><a href="#">Next</a></span>';
228ssConfig.search.templates.pageFirst =
229'<span class="ss-page-first" data-start="{{start}}"><a href="#">First</a></span>';
230ssConfig.search.templates.pageLast =
231'<span class="ss-page-last" data-start="{{start}}"><a href="#">Last</a></span>';
232
233ssConfig.search.templates.notfound = search_not_found_txt;
234
235ssConfig.search.templates.maybe =
236'<div id="ss-maybe">' +
237	'<div id="ss-maybe-message">もしかして:</div>' +
238'</div>';
239
240ssConfig.search.templates.relateWords =
241'<div id="ss-relate-words">' +
242	'<dl>' +
243		'<dt>関連キーワード</dt>' +
244		'<dd>' +
245			'<ul id="ss-relate-words-container">' +
246			'</ul>' +
247		'</dd>' +
248	'</dl>' +
249'</div>';
250
251if (ssConfig.image != undefined && ssConfig.image.templates != undefined) {
252	ssConfig.image.templates.preview = '';
253	'<div id="ss-preview">' +
254		'<div id="ss-preview-container">' +
255			'<img src="{{previewImage}}" id="ss-preview-image" width="400" height="300" alt="" />' +
256		'</div>' +
257	'</div>';
258}
259if (ssConfig.suggest != undefined && ssConfig.suggest.templates != undefined) {
260	ssConfig.suggest.templates.item =
261	'<div class="ss-suggest-item ss-suggest-item-off" id="{{item.suggestId}}">' +
262		'<span class="ss-suggest-key">{{item.keyword}}</span>' +
263	'</div>';
264}
265
266if (ssConfig.search.multiViews != undefined && ssConfig.search.multiViews.length > 0) {
267	ssConfig.search.multiViews[0].templates.viewtitle =
268	'<div class="ss-multiview-viewTitle">{{viewTitle}}の検索結果</div>';
269
270	ssConfig.search.multiViews[0].templates.navigation =
271	'<div>' +
272		'<div class="ss-multiview-navi">' +
273			'<span class="ss-multiview-total-hits"><b>{{total}}</b>ä»¶</span> ' +
274				'<span class="ss-multiview-show-counts"><b>{{start}}</b>件 &#65374; <b>{{end}}</b>件を表示</span>' +
275		'</div>' +
276	'</div>';
277
278	ssConfig.search.multiViews[0].templates.item =
279	'<div class="ss-item">' +
280		'<div class="ss-page">' +
281			'<h4 class="ss-title">' +
282				'<span class="ss-file-type">{{item.fileType}}</span><a href="{{item.link}}">{{item.title}}</a>' +
283			'</h4>' +
284			'<div class="ss-summary">{{item.summary}}</div>' +
285			'<div class="ss-url"><a href="{{item.link}}">{{item.url}}</a></div>' +
286		'</div>' +
287	'</div>';
288// SyncAnswer連携用フォーマット
289// 利用する場合はコメントを外して上記設定と差し替えてください
290// 	ssConfig.search.multiViews[0].templates.item =
291// 	'<div class="ss-item">' +
292// 	'<div class="ss-page">' +
293// 		'<h4 class="ss-title">' +
294// 			'<a href="{{item.url}}">{{item.highlightTitle}}</a>' +
295// 		'</h4>' +
296// 		'<div class="ss-summary">{{item.highlightContent}}</div>' +
297// 		'<div class="ss-url"><a href="{{item.url}}">{{item.url}}</a></div>' +
298// 	'</div>' +
299// '</div>';
300	ssConfig.search.multiViews[0].templates.notfound =
301	'<div class="ss-multiview-not-found">' +
302		'<b>「{{query}}」</b>に一致するページは見つかりませんでした。' +
303	'</div>';
304
305	ssConfig.search.multiViews[0].templates.searchLink =
306	'<div class="ss-multiview-searchLink">' +
307		'<a href="{{searchLink}}">{{viewTitle}}の検索結果をもっと見る</a>' +
308	'</div>';
309
310	var multiViewCount = ssConfig.search.multiViews.length;
311	for (var i=1; i < multiViewCount; i++) {
312		ssConfig.search.multiViews[i].templates.viewtitle = ssConfig.search.multiViews[0].templates.viewtitle;
313		ssConfig.search.multiViews[i].templates.navigation = ssConfig.search.multiViews[0].templates.navigation;
314		ssConfig.search.multiViews[i].templates.item = ssConfig.search.multiViews[0].templates.item;
315		ssConfig.search.multiViews[i].templates.notfound = ssConfig.search.multiViews[0].templates.notfound;
316		ssConfig.search.multiViews[i].templates.searchLink = ssConfig.search.multiViews[0].templates.searchLink;
317	}
318}
319
320/*!
321* ss_helper.js
322* http://www.syncsearch.jp/
323*
324* @version 1.0.1
325* @date 2021-08-06
326* @license Copyright 2021 SyncThought,Inc. All Rights Reserved.
327* This software is the proprietary information of SyncThought,Inc.
328* Use is subject to license terms.
329*/
330
331function createDatePart(a,e,t,o){var a='<select name="'+a+'" class="ss-extra-param">',r="";o&&(r='<option value=""></option>');for(var n=e;n<=t;n++)r+='<option value="'+n+'">'+n+"</option>";return a+r+"</select>"}
332/*!
333* ss_loader.js
334* http://www.syncsearch.jp/
335* 
336* @version 1.0.0
337* @date 2017-06-19
338* @license Copyright 2017 SyncThought,Inc. All Rights Reserved.
339* This software is the proprietary information of SyncThought,Inc.
340* Use is subject to license terms.
341*/
342var SyncSearchLoader=function(){this.proto="https:"===location.protocol?"https://":"http://",this.server="",this.CDNv6={host:"cdn.syncsearch-ipv6.net",path:"/libs/"},this.CDN={host:"cdn.syncsearch.jp",path:"/libs/"},this.ALT={host:"static.syncsearch.jp",path:"/libs/"},this.ALTv6={host:"static.syncsearch-ipv6.net",path:"/libs/"}};SyncSearchLoader.prototype={load:function(){var targetServer,targetServer;targetServer=ssConfig.useIpv6Domain?this.CDNv6:this.CDN;
342var url=this.proto+targetServer.host+targetServer.path+ssConfig.base+"_version.js?d="+(new Date).getTime(),xhr=this.createAjaxRequest();try{xhr.open("GET",url,!0),xhr.timeout=500,xhr.onreadystatechange=function(){4==xhr.readyState&&(200==xhr.status?(ssLoader.server=targetServer,eval(xhr.responseText)):0==xhr.status&&ssLoader.loadScript())},xhr.send(null)}catch(ex){ssLoader.loadScript()}},createAjaxRequest:function(){var t;if(window.XMLHttpRequest)t=new XMLHttpRequest;else try{t=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{t=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}}return t},loadScript:function(t){s=ssConfig.useIpv6Domain?this.ALTv6:this.ALT,this.server=s;var t=this.proto+s.host+s.path+ssConfig.base+"_version.js?d="+(new Date).getTime(),e=document.getElementsByTagName("head").item(0),s=document.createElement("script");s.setAttribute("type","text/javascript"),s.setAttribute("charset","utf-8"),s.setAttribute("src",t),e.appendChild(s)},init:function(initObj,version){var url=this.proto+this.server.host+this.server.path+ssConfig.base+"_"+version+".min.js";"undefined"!=typeof SS_DEV_SCRIPT&&(url=SS_DEV_SCRIPT);var script=document.createElement("script");script.setAttribute("type","text/javascript"),script.setAttribute("charset","utf-8"),script.setAttribute("src",url);var done=!1;script.onload=script.onreadystatechange=function(){done||this.readyState&&"loaded"!==this.readyState&&"complete"!==this.readyState||(done=!0,eval(initObj+".init()"))},document.body.appendChild(script)}};var ssLoader=new SyncSearchLoader;ssLoader.load();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.