diff --git a/src/web/WEB-INF/editCockpitProject.jsp b/src/web/WEB-INF/editCockpitProject.jsp index 87bd78e57..d45186cd5 100644 --- a/src/web/WEB-INF/editCockpitProject.jsp +++ b/src/web/WEB-INF/editCockpitProject.jsp @@ -216,7 +216,7 @@
-

Appirio Manager :

+

Appirio Project Manager :

-
-

TopCoder Appirio Managers :

+
+

TopCoder Appirio Project Managers :

Add - TopCoder Appirio Manager + TopCoder Appirio Project Manager diff --git a/src/web/scripts/editCockpitProject.js b/src/web/scripts/editCockpitProject.js index 795fd322a..5c06a1002 100644 --- a/src/web/scripts/editCockpitProject.js +++ b/src/web/scripts/editCockpitProject.js @@ -911,7 +911,7 @@ $(document).ready(function (e) { return false; }); - /*$('.memberList ul li, .techList ul li').each(function () { + $('.memberList ul li, .techList ul li').each(function () { $(this).append($('')); $(this).hover( function () { @@ -921,7 +921,7 @@ $(document).ready(function (e) { $(this).removeClass('hovered'); } ); - });*/ + }); $('.memberList .close').live('click', function () { var p = $(this).parent(); @@ -991,7 +991,7 @@ $(document).ready(function (e) { p.remove(); - + checkAppirioManagerNumber(); return false; }); @@ -1238,6 +1238,14 @@ $(document).ready(function (e) { } + function checkAppirioManagerNumber() { + if($("div.appirioManagerList ul li.memberLink").length > 0) { + $("div.appirioManagerList .triggerManagerModal").addClass('hidden'); + } else { + $("div.appirioManagerList .triggerManagerModal").removeClass('hidden'); + } + + } // add item $('.userManagementModal .addUserForm .addItem').live('click', function () { @@ -1245,7 +1253,7 @@ $(document).ready(function (e) { if(modal.find('.addUserForm .addUserLeft ul li.selected').length > 1 && modal.attr('id') == 'appirioManagersModal') { - showErrors("A project can only have 1 Appirio Manager"); + showErrors("A project can only have 1 Appirio Project Manager"); return; } @@ -1725,7 +1733,7 @@ $(document).ready(function (e) { var entry = $(''); + + value.userId + '" class="memberLink">' + value.handle + ''); handleList.append(entry); entry.hover( function () { @@ -1737,6 +1745,7 @@ $(document).ready(function (e) { ); }); + checkAppirioManagerNumber(); }, function (errorMessage) { modalAllClose(); diff --git a/src/web/scripts/launch/contestDetailSoftware.js b/src/web/scripts/launch/contestDetailSoftware.js index 02f8fb8c0..81af267cb 100644 --- a/src/web/scripts/launch/contestDetailSoftware.js +++ b/src/web/scripts/launch/contestDetailSoftware.js @@ -108,9 +108,12 @@ var contestHasSpecReview = true; var loadingChallengeDetails = false; function getContestPrize(prizesData, place) { - if(prizesData && prizesData.length >= place - && mainWidget.softwareCompetition.projectHeader.prizes[place - 1].place == place) { - return mainWidget.softwareCompetition.projectHeader.prizes[place - 1].prizeAmount; + if(prizesData && prizesData.length >= place) { + for(var i = 0; i < prizesData.length; ++i) { + if(prizesData[i].place == place && prizesData[i].prizeType.id == 15) { + return prizesData[i].prizeAmount; + } + } } return -1; @@ -816,11 +819,16 @@ function initContest(contestJson) { customCosts.reliabilityBonusCost = parseFloat(projectHeader.getReliabilityBonusCost()); customCosts.specReviewCost = parseFloat(projectHeader.getSpecReviewCost()); customCosts.drCost = parseFloat(digitalRunPoints); + if(projectHeader.prizes.length > 2) { // there are extra prizes var extraPrizes = []; - for(var k = 2; k < projectHeader.prizes.length; ++k) { - extraPrizes.push(projectHeader.prizes[k].prizeAmount); + + for(var placement = 3; placement <= 5; ++placement) { + var extraPrizeAmount = getContestPrize(mainWidget.softwareCompetition.projectHeader.prizes, placement); + if(extraPrizeAmount > 0) { + extraPrizes.push(extraPrizeAmount); + } } customCosts.extraPrizes = extraPrizes; } @@ -1916,12 +1924,12 @@ function updateContestCostData() { actualFee = (firstPlacePrize + (secondPlacePrize || 0) + extraPrize + checkpointPrize + reviewCost + (reliability || 0) + specReview + (digitalRun || 0) + copilotFee) * contestPercentage; } - $('#rswContestFee').html(actualFee.formatMoney(2) + ' (' + (contestPercentage * 100).toFixed(2) + '% markup)'); + $('#rswContestFee').html(actualFee.formatMoney(2) + ' (' + (contestPercentage * 100).toFixed(2) + '% markup)'); $('#swContestFee').html(actualFee.formatMoney(2)); $("#swContestFeePercentage").text(' (' + (contestPercentage * 100).toFixed(2) + '% markup)'); if(actualFee != contestFee) { // this can be commented out for debug the contest fee consistency - //alert('DEBUG:not matched'); + // alert('DEBUG:not matched -> calculated fee:' + actualFee + " fee value in project info:" + contestFee); contestFee = actualFee; } diff --git a/src/web/scripts/launch/main.js b/src/web/scripts/launch/main.js index f5395b783..7477c2274 100644 --- a/src/web/scripts/launch/main.js +++ b/src/web/scripts/launch/main.js @@ -1788,7 +1788,8 @@ function fillPrizes(billingProjectId) { $(".contest_prize td.extraPrize").hide(); - if(contestCost.secondPlaceCost && contestCost.secondPlaceCost > 0) { + + if(contestCost.secondPlaceCost && contestCost.secondPlaceCost > 0 && projectCategoryId == SOFTWARE_CATEGORY_ID_CODE) { $('.contest_prize td.extraPrize:eq(0) span').html(contestCost.secondPlaceCost.formatMoney(2)).parent().show(); }