| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -341,23 +341,37 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div v-else-if="givesTotalsByUnit.length > 0" class="flex-1"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <span class="font-semibold mr-2 shrink-0">Totals</span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <span class="whitespace-nowrap overflow-hidden text-ellipsis"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a @click="totalsExpanded = !totalsExpanded" class="cursor-pointer text-blue-500"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  @click="totalsExpanded = !totalsExpanded" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  class="cursor-pointer text-blue-500" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <!-- just show the hours, or alternatively whatever is first --> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <span v-if="givenTotalHours() > 0"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    {{ givenTotalHours() }} {{ libsUtil.UNIT_SHORT["HUR"] }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <span v-else> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    {{ givesTotalsByUnit[0].amount }} {{ libsUtil.UNIT_SHORT[givesTotalsByUnit[0].unit] }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    {{ givesTotalsByUnit[0].amount }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    {{ libsUtil.UNIT_SHORT[givesTotalsByUnit[0].unit] }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <span v-if="givesTotalsByUnit.length > 1">...</span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    <fa :icon="totalsExpanded ? 'chevron-up' : 'chevron-right'" class="fa-fw text-xs ml-1" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      :icon="totalsExpanded ? 'chevron-up' : 'chevron-right'" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      class="fa-fw text-xs ml-1" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <!-- show the full list when expanded --> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <div v-if="totalsExpanded"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <div v-for="(total, index) in givesTotalsByUnit" :key="total.unit" class="ml-2"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    <fa :icon="libsUtil.iconForUnitCode(total.unit)" class="fa-fw text-slate-400 mr-1" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <div | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    v-for="total in givesTotalsByUnit" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    :key="total.unit" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    class="ml-2" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      :icon="libsUtil.iconForUnitCode(total.unit)" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      class="fa-fw text-slate-400 mr-1" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    {{ total.amount }} {{ libsUtil.UNIT_LONG[total.unit] }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </div> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -365,7 +379,9 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div v-else> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <span class="font-semibold mr-2 shrink-0"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                {{ givesToThis.length }}{{ givesHitLimit ? "+" : "" }} record{{ givesToThis.length === 1 ? "" : "s" }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                {{ givesToThis.length }}{{ givesHitLimit ? "+" : "" }} record{{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  givesToThis.length === 1 ? "" : "s" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          </div> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -374,62 +390,71 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          <ul class="mt-2 text-sm border-t border-slate-300"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <li | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              v-for="give in givesToThis" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            :key="give.id" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            class="py-1.5 border-b border-slate-300" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div class="flex justify-between gap-4"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="user" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                {{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  serverUtil.didInfo( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    give.agentDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    activeDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    allMyDids, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    allContacts, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <span v-if="give.amount" class="whitespace-nowrap"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  :icon="libsUtil.iconForUnitCode(give.unit)" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  class="fa-fw text-slate-400" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                />{{ give.amount }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div class="text-slate-500"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <fa icon="calendar" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              {{ give.issuedAt?.substring(0, 10) }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div v-if="give.description" class="text-slate-500"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <fa icon="comment" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              {{ give.description }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div class="flex justify-between"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <a @click="onClickLoadClaim(give.jwtId)"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="file-lines" class="text-blue-500 cursor-pointer" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              :key="give.id" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              class="py-1.5 border-b border-slate-300" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <div class="flex justify-between gap-4"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa icon="user" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  {{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    serverUtil.didInfo( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      give.agentDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      activeDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      allMyDids, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                      allContacts, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <span v-if="give.amount" class="whitespace-nowrap"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    :icon="libsUtil.iconForUnitCode(give.unit)" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    class="fa-fw text-slate-400" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  />{{ give.amount }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </span> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <div class="text-slate-500"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="calendar" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                {{ give.issuedAt?.substring(0, 10) }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <div v-if="give.description" class="text-slate-500"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="comment" class="fa-fw text-slate-400" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                {{ give.description }} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <div class="flex justify-between"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a @click="onClickLoadClaim(give.jwtId)"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa icon="file-lines" class="text-blue-500 cursor-pointer" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <a | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                v-if=" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  checkIsConfirmable(give) && | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  !recentlyCheckedAndUnconfirmableJwts.includes(give.jwtId) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                " | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                @click="deepCheckConfirmable(give)" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="circle-check" class="text-blue-500 cursor-pointer" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <a v-else-if="checkingConfirmationForJwtId === give.jwtId"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="spinner" class="fa-spin-pulse" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <a v-else @click="shallowNotifyWhyCannotConfirm(give)"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <fa icon="circle-check" class="text-slate-500 cursor-pointer" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            <div v-if="give.fullClaim.image" class="flex justify-center"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <a :href="give.fullClaim.image" target="_blank"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <img :src="give.fullClaim.image" class="h-24 mt-2 rounded-xl" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  v-if=" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    checkIsConfirmable(give) && | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    !recentlyCheckedAndUnconfirmableJwts.includes(give.jwtId) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  " | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  @click="deepCheckConfirmable(give)" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                > | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    icon="circle-check" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    class="text-blue-500 cursor-pointer" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a v-else-if="checkingConfirmationForJwtId === give.jwtId"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa icon="spinner" class="fa-spin-pulse" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a v-else @click="shallowNotifyWhyCannotConfirm(give)"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <fa | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    icon="circle-check" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    class="text-slate-500 cursor-pointer" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <div v-if="give.fullClaim.image" class="flex justify-center"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <a :href="give.fullClaim.image" target="_blank"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <img | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    :src="give.fullClaim.image" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                    class="h-24 mt-2 rounded-xl" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                </a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              </div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            </li> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          </ul> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        </div> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -594,7 +619,7 @@ export default class ProjectViewView extends Vue { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givesHitLimit = false; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givesProvidedByThis: Array<GiveSummaryRecord> = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givesProvidedByHitLimit = false; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givesTotalsByUnit: Array<{unit: string, amount: number}> = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givesTotalsByUnit: Array<{ unit: string; amount: number }> = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  imageUrl = ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  isRegistered = false; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  issuer = ""; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -1254,14 +1279,17 @@ export default class ProjectViewView extends Vue { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  async loadTotals() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.loadingTotals = true; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const url = this.apiServer + "/api/v2/report/givesToPlans?planIds=" + encodeURIComponent(JSON.stringify([this.projectId])); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const url = | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.apiServer + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      "/api/v2/report/givesToPlans?planIds=" + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      encodeURIComponent(JSON.stringify([this.projectId])); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const headers = await serverUtil.getHeaders(this.activeDid); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    try { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      const resp = await this.axios.get(url, { headers }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      if (resp.status === 200 && resp.data.data) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        // Calculate totals by unit | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        const totals: {[key: string]: number} = {}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        const totals: { [key: string]: number } = {}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        resp.data.data.forEach((give: GiveSummaryRecord) => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          const amount = give.fullClaim.object?.amountOfThisGood; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          const unit = give.fullClaim.object?.unitCode; | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -1271,10 +1299,12 @@ export default class ProjectViewView extends Vue { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        // Convert totals object to array format | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        this.givesTotalsByUnit = Object.entries(totals).map(([unit, amount]) => ({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          unit, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          amount | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        })); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        this.givesTotalsByUnit = Object.entries(totals).map( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          ([unit, amount]) => ({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            unit, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            amount, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          }), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } catch (error) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      console.error("Error loading totals:", error); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -1293,7 +1323,9 @@ export default class ProjectViewView extends Vue { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givenTotalHours(): number { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return this.givesTotalsByUnit.find(total => total.unit === "HUR")?.amount || 0; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return ( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.givesTotalsByUnit.find((total) => total.unit === "HUR")?.amount || 0 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					</script> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
					 | 
				
				 | 
				
					
  |