(function () { var targetScreeningWrapper = $('#protein-category'); var $effectScreeningWrapper = $('#target_by_effects'); var pageType = $(document).find('[data-page-type]').attr('data-page-type'); var tagSelectStr = getQueryString('tag'); var speciesSelectStr = getQueryString('species'); var sourceSelectStr = getQueryString('source'); var page = Number($(document).find('[data-products-page-number]').attr('data-products-page-number') || 1); var targetPage = Number(1); var targetProteinPage = Number(1); var categoryName = $(document).find('[data-category-name]').attr('data-category-name'); var categoryaAlias = $(document).find('[data-category-alias]').attr('data-category-alias') || ''; var targetName = $(document).find('[data-target-name]').attr('data-target-name'); var isoformsName = $(document).find('[data-isoforms-name]').attr('data-isoforms-name'); var proteinCategorySelectArr = []; var targetSelectArr = []; var tagSelectArr = tagSelectStr !== '' ? tagSelectStr.split(',') : []; var speciesSelectArr = speciesSelectStr !== '' ? speciesSelectStr.split(',') : []; var sourceSelectArr = sourceSelectStr !== '' ? sourceSelectStr.split(',') : []; var effectSelectArr = []; var getCurrentDate = function getCurrentDate() { var date = new Date(), year = date.getFullYear(), month = date.getMonth() + 1, strDate = date.getDate(); if (month >= 1 && month <= 9) month = '0' + month; if (strDate >= 0 && strDate <= 9) strDate = '0' + strDate; var currentDate = "".concat(year).concat(month).concat(strDate); return currentDate + ''; }; var date = getCurrentDate(); // 0 select; 1 page var clickType = 0; var clickSignSwitch = function clickSignSwitch() { // clear all targetScreeningWrapper.find('>p').on('click', function (e) { e.stopPropagation(); clickType = 0; var thisSignSwitch = $(this).next().find('li>span'); proteinCategorySelectArr = []; targetSelectArr = []; tagSelectArr = []; speciesSelectArr = []; sourceSelectArr = []; thisSignSwitch.removeClass('on'); if (pageType === 'target') { targetProteinPage = 1; getTargetProteinProducts(0); } if (pageType === 'isoform') { targetProteinPage = 1; getTargetIsoformsProteinProducts(0); } else { page = 1; getProductsByTypeNames(0); } }); targetScreeningWrapper.find('label').on('click', function (e) { e.stopPropagation(); clickType = 0; var thisSignImg = $(this).find('img').attr('src'); var flag = thisSignImg.endsWith('yes1.gif') ? 1 : 0; var categoryType = $(this).attr('data-category-type'); // console.log(categoryType + "-" + $(this).attr('data-category-url')); var categoryName = $(this).attr('data-category-url'); if (flag === 0) { $(this).find('img').attr('src', '/new/images/web/yes1.gif'); if (categoryType === 'category') { proteinCategorySelectArr.push(categoryName); } else if (categoryType === 'Tag') { tagSelectArr.push(categoryName); } else if (categoryType === 'Species') { speciesSelectArr.push(categoryName); } else { sourceSelectArr.push(categoryName); } } else { $(this).find('img').attr('src', '/new/images/web/non.gif'); if (categoryType === 'category') { proteinCategorySelectArr.splice($.inArray(categoryName, proteinCategorySelectArr), 1); } else if (categoryType === 'Tag') { tagSelectArr.splice($.inArray(categoryName, tagSelectArr), 1); } else if (categoryType === 'Species') { speciesSelectArr.splice($.inArray(categoryName, speciesSelectArr), 1); } else { sourceSelectArr.splice($.inArray(categoryName, sourceSelectArr), 1); } } if (pageType === 'target') { targetProteinPage = 1; getTargetProteinProducts(0); } if (pageType === 'isoform') { targetProteinPage = 1; getTargetIsoformsProteinProducts(0); } else { page = 1; getProductsByTypeNames(0); } }); }; var clickSignSwitchTarget = function clickSignSwitchTarget() { $effectScreeningWrapper.find('label').on('click', function (e) { e.stopPropagation(); clickType = 0; var thisSignImg = $(this).find('img').attr('src'); var flag = thisSignImg.endsWith('yes1.gif') ? 1 : 0; var categoryType = $(this).attr('data-category-type'); var categoryName = $(this).attr('data-category-url'); // console.log(categoryType + "-" + $(this).attr('data-category-url')); if (flag === 0) { $(this).find('img').attr('src', '/new/images/web/yes1.gif'); if (categoryType === 'Target') { targetSelectArr = []; targetSelectArr.push(categoryName); } else { effectSelectArr = []; effectSelectArr.push(categoryName); } } else { $(this).find('img').attr('src', '/new/images/web/non.gif'); if (categoryType === 'Target') { targetSelectArr.splice($.inArray(categoryName, proteinCategorySelectArr), 1); } else { effectSelectArr.splice($.inArray(categoryName, effectSelectArr), 1); } } targetPage = 1; getTargetProducts(0); }); }; var clickSignSwitchMap = function clickSignSwitchMap() { $('#target_pathway_map').find('label').on('click', function (e) { e.stopPropagation(); var thisSignImg = $(this).find('img').attr('src'); var flag = thisSignImg.endsWith('rdo_yes.png') ? 1 : 0; var id = $(this).attr('data-category-url'); // console.log(categoryType + "-" + $(this).attr('data-category-url')); if (flag === 0) { $('#target_pathway_map').find('img').attr('src', '/new/images/web/rdo_no.png'); $('.pathwayMap-list').hide(); $(this).find('img').attr('src', '/new/images/web/rdo_yes.png'); $('#' + id).show(); } }); }; clickSignSwitch(); clickSignSwitchTarget(); clickSignSwitchMap(); var prevPage = function prevPage(obj) { clickType = 0; var type = $(obj).parent().parent().parent().hasClass('pageTop') ? 0 : 1; if ($(obj).parent().parent().attr("data-page-type") === 'target') { targetPage -= 1; getTargetProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'isoform') { targetProteinPage -= 1; getTargetIsoformsProteinProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'proteins') { clickType = 1; page -= 1; getProductsByTypeNames(type); } else { targetProteinPage -= 1; getTargetProteinProducts(type); } }; var nextPage = function nextPage(obj) { clickType = 0; var type = $(obj).parent().parent().parent().hasClass('pageTop') ? 0 : 1; if ($(obj).parent().parent().attr("data-page-type") === 'target') { targetPage += 1; getTargetProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'isoform') { targetProteinPage += 1; getTargetIsoformsProteinProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'proteins') { clickType = 1; page += 1; getProductsByTypeNames(type); } else { targetProteinPage += 1; getTargetProteinProducts(type); } }; var goPage = function goPage(obj, pageNum) { clickType = 0; var type = $(obj).parent().parent().parent().hasClass('pageTop') ? 0 : 1; if ($(obj).parent().parent().attr("data-page-type") === 'target') { targetPage = pageNum; getTargetProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'isoform') { targetProteinPage = pageNum; getTargetIsoformsProteinProducts(type); } else if ($(obj).parent().parent().attr("data-page-type") === 'proteins') { clickType = 1; page = pageNum; getProductsByTypeNames(type); } else { targetProteinPage = pageNum; getTargetProteinProducts(type); } }; window.prevPage = prevPage; window.nextPage = nextPage; window.goPage = goPage; var changeUrl = function changeUrl(pageNumber, type) { var curWwwPath = window.location.href; var pathName = window.location.pathname; var pos = curWwwPath.indexOf(pathName); var localhostPath = curWwwPath.substring(0, pos); // console.log(tagSelectArr.toString()); // console.log(speciesSelectArr.toString()); // console.log(sourceSelectArr.toString()); // console.log('clickType:' + clickType); var queryString = (tagSelectArr.length > 0 ? '?tag=' + tagSelectArr.toString() : '') + (tagSelectArr.length > 0 && speciesSelectArr.length > 0 ? '&' : speciesSelectArr.length > 0 ? '?' : '') + (speciesSelectArr.length > 0 ? 'species=' + speciesSelectArr.toString() : '') + ((tagSelectArr.length > 0 || speciesSelectArr.length > 0) && sourceSelectArr.length > 0 ? '&' : sourceSelectArr.length > 0 ? '?' : '') + (sourceSelectArr.length > 0 ? 'source=' + sourceSelectArr.toString() : ''); if (queryString) { queryString = queryString + (clickType ? '&page=' + pageNumber : ''); } else { queryString = clickType ? '?page=' + pageNumber : ''; } var newUrl = localhostPath + pathName + queryString; history.replaceState({}, '', newUrl); }; var getProductsHtml = function getProductsHtml(products) { var listHtml = ''; $.each(products, function (i, item) { listHtml += '
  • ' + '
    ' + '
    ' + item.catalogNo + '
    ' + '
    ' + '' + '' + '' + '' + '' + '' + (typeof item.chineseDescription !== 'undefined' && item.chineseDescription !== '' ? '' + '' + '' : '') + '
    ' + '' + item.name + '' + (typeof item.synonyms !== 'undefined' && item.synonyms !== '' || typeof item.chineseName !== 'undefined' && item.chineseName !== '' ? (typeof item.chineseName !== 'undefined' && item.chineseName !== '' ? '

    ' + item.chineseName + '

    ' : '') + '

    ' + (typeof item.synonyms !== 'undefined' && item.synonyms !== '' ? categoryaAlias !== '' ? item.synonyms.replace(categoryaAlias, '' + categoryaAlias + '') : item.synonyms : '') + '

    ' : '') + '
    ' + (typeof item.species !== 'undefined' ? item.species : '') + '' + (typeof item.source !== 'undefined' ? item.source : '') + '
    ' + (typeof item.chineseDescription !== 'undefined' ? item.chineseDescription : '') + '
    ' + '
    ' + '
    ' + '
  • '; }); return listHtml; }; var getProteinsTypeHtml = function getProteinsTypeHtml(categories, tags, species, sources) { var typesHtml = ''; if (categories.length > 0 || tags.length > 0 || species.length > 0 || sources.length > 0) { typesHtml += ''; } if (categories.length > 0) { typesHtml += ''; } if (species.length > 0) { typesHtml += ''; } if (tags.length > 0) { typesHtml += ''; } if (sources.length > 0) { typesHtml += ''; } if (categories.length > 0 || tags.length > 0 || species.length > 0 || sources.length > 0) { typesHtml += '
    分类:'; var selCategory = ';' + proteinCategorySelectArr.join(';') + ';'; $.each(categories, function (i, item) { //(categories.length === 1 ? 'style="pointer-events: none;"' : '') typesHtml += ''; }); typesHtml += '
    种属:'; var selSpecies = ',' + speciesSelectArr.join() + ','; $.each(species, function (i, item) { typesHtml += ''; }); typesHtml += '
    标签:'; var selTags = ',' + tagSelectArr.join() + ','; $.each(tags, function (i, item) { typesHtml += ''; }); typesHtml += '
    表达系统:'; var selSource = ',' + sourceSelectArr.join() + ','; $.each(sources, function (i, item) { typesHtml += ''; }); typesHtml += '
    '; } return typesHtml; }; var $products = $('#protein-products>.sub_ctg_list_con'); var $page = $(document).find('[data-products-page]'); var $noResults = $('.no-results'); var getProductsByTypeNames = function getProductsByTypeNames(type) { $('.loading-gif').show(); // console.log(JSON.stringify({'categoryName': categoryName, 'tag': tagSelectArr.join(), 'species': speciesSelectArr.join(), 'source': sourceSelectArr.join(), 'page': page})); // $.postJSON('/mce_cellCytokines!proteinCategoryProducts.shtml', {'categoryName': categoryName, 'tag': tagSelectArr.join(), 'species': speciesSelectArr.join(), 'source': sourceSelectArr.join(), 'page': page}, "json", true, { $.ajax({ url: '/mce_cellCytokines!proteinCategoryProducts.shtml?mcenow=' + new Date().getTime(), data: { 'categoryName': categoryName, 'tag': tagSelectArr.join(), 'species': speciesSelectArr.join(), 'source': sourceSelectArr.join(), 'page': page }, cache: false, dataType: 'json', type: "post", success: function success(data) { if (data.success) { var products = data.products; var listHtml = getProductsHtml(products); $products.html(listHtml); if (listHtml === '') { noResultShow(); } else { noResultHide(); } $(document).find('[data-products-number]').html(data.productsNumber); var categories = []; var tags = data.tagList; var species = data.speciesList; var sources = data.sourceList; targetScreeningWrapper.html(getProteinsTypeHtml(categories, tags, species, sources)); $(document).find('[data-effect-products-number]').html(data.productsNumber); clickSignSwitch(); } else { noResultShow(); $(document).find('[data-products-number]').html(0); } getPages($page, page, data.pageTotal); }, error: function error(request) { noResultShow(); $(document).find('[data-products-number]').html(0); $page.html(''); }, complete: function complete(XMLHttpRequest, textStatus) { changeUrl(page, type); if (type) { positioning($('.sub_ctg_h2')); } $('.loading-gif').hide(); } }); }; var getTargetProductsHtml = function getTargetProductsHtml(products) { var listHtml = ''; $.each(products, function (i, item) { var effectName = ''; if (typeof item.effects !== 'undefined' && item.effects !== '') { $.each(item.effects, function (i, effect) { effectName += effect.name + (item.effects.length > 1 && i != item.effects.length - 1 ? '; ' : ''); }); } listHtml += '
  • ' + '
    ' + item.catalogNo + '
    ' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '
    ' + item.productName + '' + (item.isNewProduct ? '' : '') + (item.productNameCn != '' ? '

    ' + item.productNameCn + '

    ' : '') + '
    ' + (effectName !== '' ? targetName + ' ' + effectName : '') + '' + item.purity + '
    ' + item.information + '
    ' + '
    ' + '
  • '; }); return listHtml; }; var getTargetEffectsHtml = function getTargetEffectsHtml(targets, effects) { var typesHtml = ''; if (targets.length > 0 || effects.length > 0) { typesHtml += ''; } if (targets.length > 0) { typesHtml += ''; } if (effects.length > 0) { typesHtml += ''; } if (targets.length > 0 || effects.length > 0) { typesHtml += '
    By Targets:'; var selTargets = ';' + targetSelectArr.join(';') + ';'; $.each(targets, function (i, item) { typesHtml += ''; }); typesHtml += '
    By Effects:'; var selEffects = ',' + effectSelectArr.join() + ','; $.each(effects, function (i, item) { typesHtml += ''; }); typesHtml += '
    '; } return typesHtml; }; var $targetProducts = $('#target-products>.sub_ctg_list_con'); var $targetPage = $(document).find('[data-target-products-page]'); var getTargetProducts = function getTargetProducts(type) { $('.loading-gif').show(); $.ajax({ url: '/mce_category!targetProductsByProteinCategory.shtml?mcenow=' + new Date().getTime(), data: { 'proteinCategoryName': categoryName, 'categoryNames': targetSelectArr.join(';'), 'effectName': effectSelectArr.join(), 'page': targetPage }, cache: false, dataType: 'json', type: "post", success: function success(data) { if (data.success) { var products = data.products; var listHtml = getTargetProductsHtml(products); $targetProducts.html(listHtml); if (listHtml === '') { noResultShow(); } else { noResultHide(); } var targets = data.targets; var effects = data.effects; $effectScreeningWrapper.html(getTargetEffectsHtml(targets, effects)); $(document).find('[data-target-products-number]').html(data.productsNumber); clickSignSwitchTarget(); } else { noResultShow(); $(document).find('[data-target-products-number]').html(0); } getPages($targetPage, targetPage, data.pageTotal); }, error: function error(request) { noResultShow(); $(document).find('[data-target-products-number]').html(0); $targetPage.html(''); }, complete: function complete(XMLHttpRequest, textStatus) { if (type) { positioning($('.tab-con-1')); } $('.loading-gif').hide(); } }); }; $('#target-category_tit').on('click', function () { getTargetProducts(0); }); var $targetProteinProducts = $('#target-protein-products>.sub_ctg_list_con'); var $targetProteinPage = $(document).find('[data-target-protein-products-page]'); var getTargetProteinProducts = function getTargetProteinProducts(type) { $('.loading-gif').show(); $.ajax({ url: '/mce_category!targetProteinProducts.shtml?mcenow=' + new Date().getTime(), data: { 'categoryName': targetName, 'proteinCategoryIds': proteinCategorySelectArr.join(';'), 'tag': tagSelectArr.join(), 'species': speciesSelectArr.join(), 'source': sourceSelectArr.join(), 'page': targetProteinPage }, cache: false, dataType: 'json', type: "post", success: function success(data) { if (data.success) { var products = data.products; var listHtml = getProductsHtml(products); $targetProteinProducts.html(listHtml); if (listHtml === '') { noResultShow(); } else { noResultHide(); } var categories = data.proteinCategories; var tags = data.tagList; var species = data.speciesList; var sources = data.sourceList; targetScreeningWrapper.html(getProteinsTypeHtml(categories, tags, species, sources)); $(document).find('[data-target-protein-products-number]').html(data.productsNumber); clickSignSwitch(); } else { noResultShow(); $(document).find('[data-target-protein-products-number]').html(0); } getPages($targetProteinPage, targetProteinPage, data.pageTotal); }, error: function error(request) { noResultShow(); $(document).find('[data-target-protein-products-number]').html(0); $targetProteinPage.html(''); }, complete: function complete(XMLHttpRequest, textStatus) { if (type) { positioning($('.tab-con-1')); } $('.loading-gif').hide(); } }); }; $('#target-protein_tit').on('click', function () { getTargetProteinProducts(0); }); var getTargetIsoformsProteinProducts = function getTargetIsoformsProteinProducts(type) { $('.loading-gif').show(); $.ajax({ url: '/mce_category!isoformProteinProducts.shtml?mcenow=' + new Date().getTime(), data: { 'categoryName': targetName, 'isoformsName': isoformsName, 'proteinCategoryIds': proteinCategorySelectArr.join(';'), 'tag': tagSelectArr.join(), 'species': speciesSelectArr.join(), 'source': sourceSelectArr.join(), 'page': targetProteinPage }, cache: false, dataType: 'json', type: "post", success: function success(data) { if (data.success) { var products = data.products; var listHtml = getProductsHtml(products); $targetProteinProducts.html(listHtml); if (listHtml === '') { noResultShow(); } else { noResultHide(); } var categories = data.proteinCategories; var tags = data.tagList; var species = data.speciesList; var sources = data.sourceList; targetScreeningWrapper.html(getProteinsTypeHtml(categories, tags, species, sources)); $(document).find('[data-target-protein-products-number]').html(data.productsNumber); clickSignSwitch(); } else { noResultShow(); $(document).find('[data-target-protein-products-number]').html(0); } getPages($targetProteinPage, targetProteinPage, data.pageTotal); }, error: function error(request) { noResultShow(); $(document).find('[data-target-protein-products-number]').html(0); $targetProteinPage.html(''); }, complete: function complete(XMLHttpRequest, textStatus) { if (type) { positioning($('.tab-con-1')); } $('.loading-gif').hide(); } }); }; $('#target-isoform-protein_tit').on('click', function () { getTargetIsoformsProteinProducts(0); }); var noResultHide = function noResultHide() { $('#target-protein-products').show(); $('#target-products').show(); $('.loading-gif').hide(); // $noResults.hide(); }; var noResultShow = function noResultShow() { $('#target-protein-products').hide(); $('#target-products').hide(); $('.loading-gif').hide(); // $noResults.show(); }; })();