Project

General

Profile

« Previous | Next » 

Revision 58947

Added some fixes for the country page handling data

View differences:

modules/open-science-observatory-ui/trunk/src/app/pages/countrypage/country-page.component.html
517 517
                <div>
518 518
                  <div class="md-card">
519 519
                    <div class="md-card-content">
520
                      <svg *ngIf="countryPageOAData.publicationsAffiliated?.percentage" viewBox="0 0 36 36" class="circular-chart publications">
520
                      <svg viewBox="0 0 36 36" class="circular-chart publications">
521 521
                        <path class="circle-bg" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
522
                        <path class="circle" attr.stroke-dasharray="{{countryPageOAData.publicationsAffiliated.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
523
                        <text x="18" y="20.35" class="percentage">{{countryPageOAData.publicationsAffiliated.percentage | number : '1.0-1'}}%</text>
522
                        <path *ngIf="countryPageOAData.publicationsAffiliated?.percentage" class="circle" attr.stroke-dasharray="{{countryPageOAData.publicationsAffiliated.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
523
                        <text *ngIf="countryPageOAData.publicationsAffiliated?.percentage" x="18" y="20.35" class="percentage">{{countryPageOAData.publicationsAffiliated.percentage | number : '1.0-1'}}%</text>
524
                        <text *ngIf="!countryPageOAData.publicationsAffiliated || !countryPageOAData.publicationsAffiliated.percentage" x="18" y="20.35" class="percentage">0%</text>
524 525
                      </svg>
525 526
                      <div class="uk-margin-small-top uk-text-center">OA publications</div>
526 527
                    </div>
......
530 531
                <div>
531 532
                  <div class="md-card">
532 533
                    <div class="md-card-content">
533
                      <svg *ngIf="countryPageOAData.datasetsAffiliated?.percentage" viewBox="0 0 36 36" class="circular-chart datasets">
534
                      <svg viewBox="0 0 36 36" class="circular-chart datasets">
534 535
                        <path class="circle-bg" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
535
                        <path class="circle" attr.stroke-dasharray="{{countryPageOAData.datasetsAffiliated.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
536
                        <text x="18" y="20.35" class="percentage">{{countryPageOAData.datasetsAffiliated.percentage | number : '1.0-1'}}%</text>
536
                        <path *ngIf="countryPageOAData.datasetsAffiliated?.percentage" class="circle" attr.stroke-dasharray="{{countryPageOAData.datasetsAffiliated.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
537
                        <text *ngIf="countryPageOAData.datasetsAffiliated?.percentage" x="18" y="20.35" class="percentage">{{countryPageOAData.datasetsAffiliated.percentage | number : '1.0-1'}}%</text>
538
                        <text *ngIf="!countryPageOAData.datasetsAffiliated || !countryPageOAData.datasetsAffiliated.percentage" x="18" y="20.35" class="percentage">0%</text>
537 539
                      </svg>
538 540
                      <div class="uk-margin-small-top uk-text-center">OA datasets</div>
539 541
                    </div>
......
543 545
                <div>
544 546
                  <div class="md-card">
545 547
                    <div class="md-card-content">
546
                      <svg *ngIf="countryPageOAData.software?.percentage" viewBox="0 0 36 36" class="circular-chart software">
548
                      <svg viewBox="0 0 36 36" class="circular-chart software">
547 549
                        <path class="circle-bg" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
548
                        <path class="circle" attr.stroke-dasharray="{{countryPageOAData.software.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
549
                        <text x="18" y="20.35" class="percentage">{{countryPageOAData.software.percentage | number : '1.0-1'}}%</text>
550
                        <path *ngIf="countryPageOAData.software?.percentage" class="circle" attr.stroke-dasharray="{{countryPageOAData.software.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
551
                        <text *ngIf="countryPageOAData.software?.percentage" x="18" y="20.35" class="percentage">{{countryPageOAData.software.percentage | number : '1.0-1'}}%</text>
552
                        <text *ngIf="!countryPageOAData.software || !countryPageOAData.software.percentage" x="18" y="20.35" class="percentage">0%</text>
550 553
                      </svg>
551 554
                      <div class="uk-margin-small-top uk-text-center">OS software</div>
552 555
                    </div>
......
556 559
                <div>
557 560
                  <div class="md-card">
558 561
                    <div class="md-card-content">
559
                      <svg *ngIf="countryPageOAData.other?.percentage" viewBox="0 0 36 36" class="circular-chart other">
562
                      <svg viewBox="0 0 36 36" class="circular-chart other">
560 563
                        <path class="circle-bg" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
561
                        <path class="circle" attr.stroke-dasharray="{{countryPageOAData.other.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
562
                        <text x="18" y="20.35" class="percentage">{{countryPageOAData.other.percentage | number : '1.0-1'}}%</text>
564
                        <path *ngIf="countryPageOAData.other?.percentage" class="circle" attr.stroke-dasharray="{{countryPageOAData.other.percentage}}, 100" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831"></path>
565
                        <text *ngIf="countryPageOAData.other?.percentage" x="18" y="20.35" class="percentage">{{countryPageOAData.other.percentage | number : '1.0-1'}}%</text>
566
                        <text *ngIf="!countryPageOAData.other || !countryPageOAData.other.percentage" x="18" y="20.35" class="percentage">0%</text>
563 567
                      </svg>
564 568
                      <div class="uk-margin-small-top uk-text-center">OA other research products</div>
565 569
                    </div>
modules/open-science-observatory-ui/trunk/src/app/pages/countrypage/country-page.component.ts
283 283
      this.goldPublicationsByOrganizationChartURL = this.sanitizer.bypassSecurityTrustResourceUrl(this.chartsURL + `%7B%22library%22%3A%22HighCharts%22%2C%22chartDescription%22%3A%7B%22queries%22%3A%5B%7B%22name%22%3A%22publications%22%2C%22type%22%3A%22bar%22%2C%22query%22%3A%7B%22name%22%3A%22new.oso.results.gold.affiliated.byorganization.country%22%2C%22parameters%22%3A%5B%22publication%22%2C%22` + this.countryCode + `%22%5D%7D%7D%5D%2C%22chart%22%3A%7B%22backgroundColor%22%3A%22%23FFFFFFFF%22%2C%22borderColor%22%3A%22%23335cadff%22%2C%22borderRadius%22%3A0%2C%22borderWidth%22%3A0%2C%22plotBorderColor%22%3A%22%23ccccccff%22%2C%22plotBorderWidth%22%3A0%7D%2C%22title%22%3A%7B%22text%22%3A%22Gold%20Publications%22%2C%22align%22%3A%22left%22%2C%22margin%22%3A50%7D%2C%22subtitle%22%3A%7B%22text%22%3A%22by%20organization%22%2C%22align%22%3A%22left%22%7D%2C%22yAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22xAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22lang%22%3A%7B%22noData%22%3A%22No%20Data%20available%20for%20the%20Query%22%7D%2C%22exporting%22%3A%7B%22enabled%22%3Atrue%7D%2C%22plotOptions%22%3A%7B%22series%22%3A%7B%22dataLabels%22%3A%7B%22enabled%22%3Afalse%7D%7D%7D%2C%22legend%22%3A%7B%22enabled%22%3Afalse%7D%2C%22credits%22%3A%7B%22href%22%3Anull%2C%22enabled%22%3Afalse%7D%2C%22colors%22%3A%5B%22%23F17AA9%22%2C%22%23787878%22%2C%22%232f7ed8%22%2C%22%230d233a%22%2C%22%238bbc21%22%2C%22%23910000%22%2C%22%231aadce%22%2C%22%23492970%22%2C%22%23f28f43%22%2C%22%2377a1e5%22%2C%22%23c42525%22%2C%22%23a6c96a%22%5D%7D%7D`);
284 284
      this.greenPublicationsByOrganizationChartURL = this.sanitizer.bypassSecurityTrustResourceUrl(this.chartsURL + `%7B%22library%22%3A%22HighCharts%22%2C%22chartDescription%22%3A%7B%22queries%22%3A%5B%7B%22name%22%3A%22publications%22%2C%22type%22%3A%22bar%22%2C%22query%22%3A%7B%22name%22%3A%22new.oso.results.green.affiliated.byorganization.country%22%2C%22parameters%22%3A%5B%22publication%22%2C%22` + this.countryCode + `%22%5D%7D%7D%5D%2C%22chart%22%3A%7B%22backgroundColor%22%3A%22%23FFFFFFFF%22%2C%22borderColor%22%3A%22%23335cadff%22%2C%22borderRadius%22%3A0%2C%22borderWidth%22%3A0%2C%22plotBorderColor%22%3A%22%23ccccccff%22%2C%22plotBorderWidth%22%3A0%7D%2C%22title%22%3A%7B%22text%22%3A%22Green%20Publications%22%2C%22align%22%3A%22left%22%2C%22margin%22%3A50%7D%2C%22subtitle%22%3A%7B%22text%22%3A%22by%20organization%22%2C%22align%22%3A%22left%22%7D%2C%22yAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22xAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22lang%22%3A%7B%22noData%22%3A%22No%20Data%20available%20for%20the%20Query%22%7D%2C%22exporting%22%3A%7B%22enabled%22%3Atrue%7D%2C%22plotOptions%22%3A%7B%22series%22%3A%7B%22dataLabels%22%3A%7B%22enabled%22%3Afalse%7D%7D%7D%2C%22legend%22%3A%7B%22enabled%22%3Afalse%7D%2C%22credits%22%3A%7B%22href%22%3Anull%2C%22enabled%22%3Afalse%7D%2C%22colors%22%3A%5B%22%23F17AA9%22%2C%22%23787878%22%2C%22%232f7ed8%22%2C%22%230d233a%22%2C%22%238bbc21%22%2C%22%23910000%22%2C%22%231aadce%22%2C%22%23492970%22%2C%22%23f28f43%22%2C%22%2377a1e5%22%2C%22%23c42525%22%2C%22%23a6c96a%22%5D%7D%7D`);
285 285

  
286
      this.greenVsGoldPublicationsChartURL = this.sanitizer.bypassSecurityTrustResourceUrl(this.chartsURL + `%7B%22library%22%3A%22HighCharts%22%2C%22chartDescription%22%3A%7B%22queries%22%3A%5B%7B%22name%22%3A%22publications%22%2C%22type%22%3A%22bar%22%2C%22query%22%3A%7B%22name%22%3A%22new.oso.publications.greenvsgold.country%22%2C%22parameters%22%3A%5B%22` + this.countryCode + `%22%5D%7D%7D%5D%2C%22chart%22%3A%7B%22backgroundColor%22%3A%22%23FFFFFFFF%22%2C%22borderColor%22%3A%22%23335cadff%22%2C%22borderRadius%22%3A0%2C%22borderWidth%22%3A0%2C%22plotBorderColor%22%3A%22%23ccccccff%22%2C%22plotBorderWidth%22%3A0%7D%2C%22title%22%3A%7B%22text%22%3A%22Green%20vs%20Gold%22%2C%22align%22%3A%22left%22%2C%22margin%22%3A50%7D%2C%22subtitle%22%3A%7B%7D%2C%22yAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22xAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22lang%22%3A%7B%22noData%22%3A%22No%20Data%20available%20for%20the%20Query%22%7D%2C%22exporting%22%3A%7B%22enabled%22%3Atrue%7D%2C%22plotOptions%22%3A%7B%22series%22%3A%7B%22dataLabels%22%3A%7B%22enabled%22%3Afalse%7D%7D%7D%2C%22legend%22%3A%7B%22enabled%22%3Afalse%7D%2C%22credits%22%3A%7B%22href%22%3Anull%2C%22enabled%22%3Afalse%7D%2C%22colors%22%3A%5B%22%23F17AA9%22%2C%22%23787878%22%2C%22%232f7ed8%22%2C%22%230d233a%22%2C%22%238bbc21%22%2C%22%23910000%22%2C%22%231aadce%22%2C%22%23492970%22%2C%22%23f28f43%22%2C%22%2377a1e5%22%2C%22%23c42525%22%2C%22%23a6c96a%22%5D%7D%7D`);
286
      this.greenVsGoldPublicationsChartURL = this.sanitizer.bypassSecurityTrustResourceUrl(this.chartsURL + `%7B%22library%22%3A%22HighCharts%22%2C%22chartDescription%22%3A%7B%22queries%22%3A%5B%7B%22name%22%3A%22publications%22%2C%22type%22%3A%22bar%22%2C%22query%22%3A%7B%22name%22%3A%22new.oso.publications.greenvsgold.country%22%2C%22parameters%22%3A%5B%22` + this.countryCode + `%22%2C%22` + this.countryCode + `%22%5D%7D%7D%5D%2C%22chart%22%3A%7B%22backgroundColor%22%3A%22%23FFFFFFFF%22%2C%22borderColor%22%3A%22%23335cadff%22%2C%22borderRadius%22%3A0%2C%22borderWidth%22%3A0%2C%22plotBorderColor%22%3A%22%23ccccccff%22%2C%22plotBorderWidth%22%3A0%7D%2C%22title%22%3A%7B%22text%22%3A%22Green%20vs%20Gold%22%2C%22align%22%3A%22left%22%2C%22margin%22%3A50%7D%2C%22subtitle%22%3A%7B%7D%2C%22yAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22xAxis%22%3A%7B%22title%22%3A%7B%22text%22%3A%22%22%7D%7D%2C%22lang%22%3A%7B%22noData%22%3A%22No%20Data%20available%20for%20the%20Query%22%7D%2C%22exporting%22%3A%7B%22enabled%22%3Atrue%7D%2C%22plotOptions%22%3A%7B%22series%22%3A%7B%22dataLabels%22%3A%7B%22enabled%22%3Afalse%7D%7D%7D%2C%22legend%22%3A%7B%22enabled%22%3Afalse%7D%2C%22credits%22%3A%7B%22href%22%3Anull%2C%22enabled%22%3Afalse%7D%2C%22colors%22%3A%5B%22%23F17AA9%22%2C%22%23787878%22%2C%22%232f7ed8%22%2C%22%230d233a%22%2C%22%238bbc21%22%2C%22%23910000%22%2C%22%231aadce%22%2C%22%23492970%22%2C%22%23f28f43%22%2C%22%2377a1e5%22%2C%22%23c42525%22%2C%22%23a6c96a%22%5D%7D%7D`);
287 287

  
288 288
      this.dataService.getFundersResultsByTypeForIndicatorForCountry('publication', 'pid', this.countryCode).subscribe(
289 289
        rawData => {
modules/open-science-observatory-ui/trunk/src/app/services/data-handler.service.ts
771 771
    for (const series of rawData.datasets) {
772 772

  
773 773
      if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
774
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication') {
774
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication'
775
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
775 776

  
776 777
        countryPageOverviewData.name = series.series.result[0].row[3];
777 778
        countryPageOverviewData.code = series.series.result[0].row[4];
......
783 784
        countryPageOverviewData.publicationsAffiliated = publicationsAffiliatedIndicator;
784 785

  
785 786
      } else if ((series.series.query.name === 'new.oso.results.oa_percentage.deposited.country')
786
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication') {
787
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication'
788
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
787 789

  
788 790
        countryPageOverviewData.name = series.series.result[0].row[3];
789 791
        countryPageOverviewData.code = series.series.result[0].row[4];
......
795 797
        countryPageOverviewData.publicationsDeposited = publicationsDepositedIndicator;
796 798

  
797 799
      } else if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
798
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset') {
800
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset'
801
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
799 802

  
800 803
        countryPageOverviewData.name = series.series.result[0].row[3];
801 804
        countryPageOverviewData.code = series.series.result[0].row[4];
......
807 810
        countryPageOverviewData.datasetsAffiliated = datasetsAffiliatedIndicator;
808 811

  
809 812
      } else if ((series.series.query.name === 'new.oso.results.oa_percentage.deposited.country')
810
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset') {
813
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset'
814
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
811 815

  
812 816
        countryPageOverviewData.name = series.series.result[0].row[3];
813 817
        countryPageOverviewData.code = series.series.result[0].row[4];
......
818 822
        datasetsDepositedIndicator.total = Number(series.series.result[0].row[2]);
819 823
        countryPageOverviewData.datasetsDeposited = datasetsDepositedIndicator;
820 824

  
821
      } else if (series.series.query.name === 'new.oso.repositories.doar_re3data.validated.country') {
825
      } else if (series.series.query.name === 'new.oso.repositories.doar_re3data.validated.country'
826
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
822 827

  
823 828
        countryPageOverviewData.name = series.series.result[0].row[3];
824 829
        countryPageOverviewData.code = series.series.result[0].row[4];
......
829 834
        repositoriesIndicator.total = Number(series.series.result[0].row[2]);
830 835
        countryPageOverviewData.repositories = repositoriesIndicator;
831 836

  
832
      } else if (series.series.query.name === 'new.oso.journals.doaj.validated.country') {
837
      } else if (series.series.query.name === 'new.oso.journals.doaj.validated.country'
838
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
833 839

  
834 840
        countryPageOverviewData.name = series.series.result[0].row[3];
835 841
        countryPageOverviewData.code = series.series.result[0].row[4];
......
840 846
        journalsIndicator.total = Number(series.series.result[0].row[2]);
841 847
        countryPageOverviewData.journals = journalsIndicator;
842 848

  
843
      } else if (series.series.query.name === 'new.oso.oa_policies.country') {
849
      } else if (series.series.query.name === 'new.oso.oa_policies.country'
850
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
844 851

  
845 852
        countryPageOverviewData.policies = Number(series.series.result[0].row[0]);
846 853

  
847
      } else if (series.series.query.name === 'new.oso.funder.country') {
854
      } else if (series.series.query.name === 'new.oso.funder.country'
855
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
848 856

  
849 857
        countryPageOverviewData.funders = Number(series.series.result[0].row[0]);
850 858

  
851
      } else if (series.series.query.name === 'new.oso.funding_organizations.country') {
859
      } else if (series.series.query.name === 'new.oso.funding_organizations.country'
860
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
852 861

  
853 862
        countryPageOverviewData.fundingOrganizations = Number(series.series.result[0].row[0]);
854 863

  
855
      } else if (series.series.query.name === 'new.oso.ec_funded_organizations.country') {
864
      } else if (series.series.query.name === 'new.oso.ec_funded_organizations.country'
865
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
856 866

  
857 867
        countryPageOverviewData.ec_fundedOrganizations = Number(series.series.result[0].row[0]);
858 868
      }
......
868 878
    for (const series of rawData.datasets) {
869 879

  
870 880
      if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
871
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication') {
881
        && series.series.query.parameters && series.series.query.parameters[0] === 'publication'
882
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
872 883

  
873 884
        countryPageOverviewData.name = series.series.result[0].row[3];
874 885
        countryPageOverviewData.code = series.series.result[0].row[4];
......
880 891
        countryPageOverviewData.publicationsAffiliated = publicationsAffiliatedIndicator;
881 892

  
882 893
      } else  if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
883
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset') {
894
        && series.series.query.parameters && series.series.query.parameters[0] === 'dataset'
895
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
884 896

  
885 897
        countryPageOverviewData.name = series.series.result[0].row[3];
886 898
        countryPageOverviewData.code = series.series.result[0].row[4];
......
892 904
        countryPageOverviewData.datasetsAffiliated = datasetsAffiliatedIndicator;
893 905

  
894 906
      } else if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
895
        && series.series.query.parameters && series.series.query.parameters[0] === 'software') {
907
        && series.series.query.parameters && series.series.query.parameters[0] === 'software'
908
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
896 909

  
897 910
        countryPageOverviewData.name = series.series.result[0].row[3];
898 911
        countryPageOverviewData.code = series.series.result[0].row[4];
......
904 917
        countryPageOverviewData.software = softwareIndicator;
905 918

  
906 919
      } else if ((series.series.query.name === 'new.oso.results.oa_percentage.country')
907
        && series.series.query.parameters && series.series.query.parameters[0] === 'other') {
920
        && series.series.query.parameters && series.series.query.parameters[0] === 'other'
921
        && series.series.result && series.series.result.length > 0 && series.series.result[0].row) {
908 922

  
909 923
        countryPageOverviewData.name = series.series.result[0].row[3];
910 924
        countryPageOverviewData.code = series.series.result[0].row[4];

Also available in: Unified diff