//******************************* // casesearch //******************************* // OIC troubled shooting: judge runnable this javascript $(function(){ if($('body.casesearch').length) { } else { // search file path var searchPath = '//www.fujitsu.com/downloads/GLOBAL/vision/customerstories/csv/searchdata.csv'; // casestudy data file path var casePath = '//www.fujitsu.com/downloads/GLOBAL/vision/customerstories/csv/casedata.csv'; // const var searchItem = '.list-casestudy-categorys'; // searchArea var searchDetailItem = '.list-casestudy-categorys-second'; // searchArea second area var outputItem = '.list-casestudy-items'; // detailArea var resultItem = '.total-number'; // resultCountArea var resetItem = '.lyt-casestudy-search-clearbtn'; // resetButton var resetItem_m = '.list-casestudy-categorys-navi-clearbtn'; // resetButton(mobile) var moreItem = '.btn-casestudy-more'; // moreReadButton var numItem = 20; // viewMaxCount /* result zero ----------------------------------------------------------------------*/ var txtZero = '
No Results Found
'; /* csv read error ----------------------------------------------------------------------*/ var txtError = 'No Results Found
'; /* show more ----------------------------------------------------------------------*/ var moreView = 'Discover More'; // handler $(loadAjax); function loadAjax() { getAllData(); } // main (first time) function getAllData() { // searchArea text $.ajax({ url: searchPath }) .then( // callback function (searchdata) { // dataArea text $.ajax({ url: casePath }) .then( // callback function (casedata) { searchSet(searchdata, casedata) caseSet(searchdata, casedata) }, // errorback function () { outputError } ); }, // errorback function () { outputError } ); } // main(refinement) function getAjaxData() { // searchArea text $.ajax({ url: searchPath }) .then( // callback function (searchdata) { // dataArea text $.ajax({ url: casePath }) .then( // callback function (casedata) { caseSet(searchdata, casedata) }, // errorback function () { outputError } ); }, // errorback function () { outputError } ); } // main(show more) function getAjaxMoreData() { // searchArea text $.ajax({ url: searchPath }) .then( // callback function (searchdata) { // dataArea text $.ajax({ url: casePath }) .then( // callback function (casedata) { caseMoreSet(searchdata, casedata) }, // errorback function () { outputError } ); }, // errorback function () { outputError } ); } /* getAjaxData / error ----------------------------------------------------------------------*/ function outputError() { $(outputItem).hide().html(txtError); $(resultItem).html('0'); $(outputItem).fadeIn(300); } /* getAjaxData / success ----------------------------------------------------------------------*/ // make checkboxes function searchSet(data, casedata) { var categoryList = makeArrOfCheckBox(data); var src = makeSrcOfCheckBox(categoryList, casedata); $(searchItem).append(src); } // make result function caseSet(catedata, casedata) { var cate = makeArrCategory(catedata); var arr = makeArr(casedata); var src = makeSrc(arr, cate, 'new'); $(outputItem).hide().html(src); // result count view $(resultItem).html(arr.length); $(outputItem).fadeIn(300); } // make result (show more) function caseMoreSet(catedata, casedata) { var cate = makeArrCategory(catedata); var arr = makeArr(casedata); var src = makeSrc(arr, cate, 'add'); $(src).appendTo($(outputItem)).hide().fadeIn(300); $(outputItem + ' li').removeAttr('style'); } //////////////////////////////////////////////////////////////////////////////// // make array //////////////////////////////////////////////////////////////////////////////// var makeArrOfCheckBox = function (data) { var obj = data.split('\n'); var header = true; var categoryList = []; $(obj).each(function () { // header line skip if (header) { header = false; return true; //continue } var objElm = this.split('\t'); if (objElm.length >= 3) { //columns count if (isHadCategory(categoryList, objElm[0])) { // add elements by category for (var i in categoryList) { var category = categoryList[i]; if (category.CATEGORY == objElm[0]) { category.LIST.push({ ID: objElm[1], NAME: objElm[2] }); } } } else { // add category categoryList.push({ CATEGORY: objElm[0], LIST: [{ ID: objElm[1], NAME: objElm[2] }] }); } } }); return categoryList; // judge the category installed function isHadCategory(categoryList, str) { for (var i in categoryList) { var category = categoryList[i]; if (category.CATEGORY == str) return true; //installed } return false; // begore make } } var makeArrCategory = function (data) { var obj = data.split('\n'); var header = true; var categoryList = []; $(obj).each(function () { // header line skip if (header) { header = false; return true; } var objElm = this.split('\t'); if (objElm.length >= 3) { // columns count categoryList.push({ ID: objElm[1], NAME: objElm[2] }); } }); return categoryList; } var makeArr = function (data) { // judge checked elements var chk = $(searchItem + ' input:checkbox'); var objCheckedId = {}; $(chk).each(function () { if (this.checked == true) { if (objCheckedId.hasOwnProperty(this.id.slice(0, 1))) { objCheckedId[this.id.slice(0, 1)].push(this.id); } else { objCheckedId[this.id.slice(0, 1)] = []; objCheckedId[this.id.slice(0, 1)].push(this.id); } } }); var header = true; var obj = data.split('\n'); var searchList = []; $(obj).each(function () { // if (header) { header = false; return true; } // get casedata var objElm = this.split('\t'); if (objElm.length >= 6) { //columns count var idList = trimArray(objElm[5].split(',')); if (idList.length > 0) { if (isDisp(idList, objCheckedId)) { // category check var cateFirst = ''; var cateSecond = ''; for(var x=0; x' + this.SUMMARY_TEXT + '