diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 0629a54..dd4679e 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -5,6 +5,7 @@ import {EnvProperties} from './openaireLibrary/utils/properties/env-properties'; import {User} from './openaireLibrary/login/utils/helper.class'; import {UserManagementService} from './openaireLibrary/services/user-management.service'; import {properties} from "../environments/environment"; +import {BehaviorSubject} from "rxjs"; declare var UIkit: any; @@ -22,14 +23,13 @@ export class AppComponent implements OnInit { properties: EnvProperties = properties; showMenu: boolean = false; user: User; - isHome: boolean = true; + isHome: BehaviorSubject = new BehaviorSubject(true); constructor(private route: ActivatedRoute, - private router: Router, - private userManagementService: UserManagementService) { + private router: Router) { this.router.events.subscribe(event => { - if(event instanceof NavigationStart) { - //this.isHome = event.url === '/'; + if (event instanceof NavigationStart) { + this.isHome.next(event.url === '/'); } }) } @@ -38,10 +38,44 @@ export class AppComponent implements OnInit { this.logInUrl = this.properties.loginUrl; this.logOutUrl = this.properties.logoutUrl; this.showMenu = true; - this.userManagementService.getUserInfo().subscribe(user => { - this.user = user; - this.menuItems = []; - this.userMenuItems = []; + this.isHome.asObservable().subscribe(isHome => { + this.buildMenu(isHome); }); } + + buildMenu(isHome) { + if(!isHome) { + this.menuItems = [ + { + rootItem: new MenuItem("home", "Home", "", "", false, [], null, {}), + items: [ + new MenuItem("intro", "Usage Statistics Intro", "", "/", false, [], null, {}), + new MenuItem("countries", "Track Countries Usage Activity", "", "/", false, [], null, {slide: 2}), +/* + new MenuItem("chart", "Monthly Usage Events", "", "/", false, [], null, {slide: 3}) +*/ + ] + }, + { + rootItem: new MenuItem("about", "About", "", "/about", false, [], null, {}), + items: [] + }, + { + rootItem: new MenuItem("resources", "Resources", "", "/resources", false, [], null, {}), + items: [] + } + ]; + } else { + this.menuItems = [ + { + rootItem: new MenuItem("about", "About", "", "/about", false, [], null, {}), + items: [] + }, + { + rootItem: new MenuItem("resources", "Resources", "", "/resources", false, [], null, {}), + items: [] + } + ]; + } + } } diff --git a/src/app/entities/usage-stat.ts b/src/app/entities/usage-stat.ts new file mode 100644 index 0000000..4f22ef3 --- /dev/null +++ b/src/app/entities/usage-stat.ts @@ -0,0 +1,6 @@ +export interface UsageStat { + country: string; + total_repositories: string; + total_views: string; + total_downloads: string; +} diff --git a/src/app/home/home.component.css b/src/app/home/home.component.css index fb5403b..e634d21 100644 --- a/src/app/home/home.component.css +++ b/src/app/home/home.component.css @@ -5,3 +5,41 @@ background-position: center top; height: 336px; } + +.second { + background-image: url("/assets/usage-statistics-assets/home/2.svg"); + background-size: contain; + background-repeat: no-repeat; + background-position: top center; + min-height: 60vh; +} + +.second input, .second input:focus { + background: #FFFFFF 0 0 no-repeat padding-box; + box-shadow: 0 3px 6px #00000029; + border-radius: 4px; + padding: 15px; + border: none; + outline: none; +} + +a.search, a.search:hover { + color: #333333; + font-weight: 700; +} + +.second .card { + background: #FFFFFF 0 0 no-repeat padding-box; + box-shadow: 0 3px 6px #00000029; + border-radius: 4px; + padding: 50px; + text-align: center; + position: relative; +} + +.second .card > img { + position: absolute; + bottom: 0; + left: 50%; + transform: translate(-50%, 50%); +} diff --git a/src/app/home/home.component.html b/src/app/home/home.component.html index 3c769e1..8d59469 100644 --- a/src/app/home/home.component.html +++ b/src/app/home/home.component.html @@ -1,6 +1,6 @@
-
+

OpenAIRE Usage Statistics Service

@@ -21,11 +21,82 @@
- + +
+

Track Countries Usage Activity

+
+
+
+ + + + {{option}} + + + + + search + +
+
+
{{(country) ? country : 'world wide'}}
+
Results
+
+
+
+
+
+ Repositories +
+

+ {{display.total_repositories | number}} +

+ +
+
+
+
+
+ Views +
+

+ {{display.total_views | number}} +

+ +
+
+
+
+
+ Downloads +
+

+ {{display.total_downloads | number}} +

+ +
+
+
+
+ No results found for that country +
+
+
+
+
+ + + +
+
diff --git a/src/app/home/home.component.ts b/src/app/home/home.component.ts index 96dfa1d..44697d4 100644 --- a/src/app/home/home.component.ts +++ b/src/app/home/home.component.ts @@ -1,76 +1,53 @@ -import {Component} from "@angular/core"; -import {animate, state, style, transition, trigger} from "@angular/animations"; +import {Component, OnInit} from "@angular/core"; +import {UsageStatsService} from "../services/usage-stats.service"; +import {UsageStat} from "../entities/usage-stat"; +import {countries} from "../services/countries"; +import {FormControl} from "@angular/forms"; +import {Observable} from "rxjs"; +import {map, startWith} from "rxjs/operators"; +import {ActivatedRoute} from "@angular/router"; @Component({ selector: 'home', templateUrl: 'home.component.html', styleUrls: ['home.component.css'], - animations: [ - trigger('1', [ - state('1', style({ - transform: 'translate(-50%, -50%)' - })), - state('2', style({ - transform: 'translate(-50%, -250%)' - })), - state('3', style({ - transform: 'translate(-50%, -450%)' - })), - transition('* => *', [ - animate('1s') - ]) - ]), - trigger('2', [ - state('1', style({ - transform: 'translate(-50%, 150%)' - })), - state('2', style({ - transform: 'translate(-50%, -50%)' - })), - state('3', style({ - transform: 'translate(-50%, -250%)' - })), - transition('* => *', [ - animate('1s') - ]) - ]), - trigger('3', [ - state('1', style({ - transform: 'translate(-50%, 250%)' - })), - state('2', style({ - transform: 'translate(-50%, 150%)' - })), - state('3', style({ - transform: 'translate(-50%, -50%)' - })), - transition('* => *', [ - animate('1s') - ]) - ]) - ] }) -export class HomeComponent { +export class HomeComponent implements OnInit{ - public animate: boolean = false; - public slide = 1; + public stats: UsageStat[] = []; + public countryFb: FormControl = new FormControl(); + public countries: Observable; + public country: String; + public display: UsageStat; + public initSlide: number = 1; - onWheel(event) { - if (!this.animate) { - this.animate = true; - if (event.deltaY > 0 && (this.slide < 3)) { - this.slide++; - setTimeout(() => { - this.animate = false; - }, 1000); - } else if (event.deltaY < 0 && (this.slide !== 1)) { - this.slide--; - setTimeout(() => { - this.animate = false; - }, 1000); - } else { - this.animate = false; + constructor(private usageStatsService: UsageStatsService, + private route: ActivatedRoute) {} + + ngOnInit() { + this.route.queryParams.subscribe(params => { + if(params['slide']) { + this.initSlide = params['slide']; } - } + }); + this.usageStatsService.getUsageStats().subscribe(stats => { + this.stats = stats; + this.search(); + }); + this.countries = this.countryFb.valueChanges + .pipe( + startWith(''), + map(value => this._filter(value)) + ); + } + + public search() { + this.country = this.countryFb.value; + this.display = this.stats.filter(stat => !this.country || stat.country === this.country)[0]; + } + + private _filter(value: string): string[] { + const filterValue = value.toLowerCase(); + return countries.map(value => value.name).filter(option => option.toLowerCase().includes(filterValue)); } } diff --git a/src/app/home/home.module.ts b/src/app/home/home.module.ts index 2c2fa0e..b45697b 100644 --- a/src/app/home/home.module.ts +++ b/src/app/home/home.module.ts @@ -3,6 +3,10 @@ import {HomeComponent} from "./home.component"; import {CommonModule} from "@angular/common"; import {RouterModule} from "@angular/router"; import {FullPageSliderModule} from "../openaireLibrary/utils/full-page-slider/full-page-slider.module"; +import {MatAutocompleteModule} from "@angular/material/autocomplete"; +import {ReactiveFormsModule} from "@angular/forms"; +import {MatFormFieldModule} from "@angular/material/form-field"; +import {MatInputModule} from "@angular/material/input"; @NgModule({ imports: [ @@ -10,11 +14,14 @@ import {FullPageSliderModule} from "../openaireLibrary/utils/full-page-slider/fu RouterModule.forChild([{ path: '', component: HomeComponent }]), - FullPageSliderModule + FullPageSliderModule, + MatAutocompleteModule, + ReactiveFormsModule, + MatFormFieldModule, + MatInputModule ], declarations: [HomeComponent], exports: [HomeComponent] }) -export class HomeModule { - +export class HomeModule{ } diff --git a/src/app/services/countries.ts b/src/app/services/countries.ts new file mode 100644 index 0000000..bb533d5 --- /dev/null +++ b/src/app/services/countries.ts @@ -0,0 +1,245 @@ +export const countries = [ + {name: 'Afghanistan', code: 'AF'}, + {name: 'Ă…land Islands', code: 'AX'}, + {name: 'Albania', code: 'AL'}, + {name: 'Algeria', code: 'DZ'}, + {name: 'American Samoa', code: 'AS'}, + {name: 'AndorrA', code: 'AD'}, + {name: 'Angola', code: 'AO'}, + {name: 'Anguilla', code: 'AI'}, + {name: 'Antarctica', code: 'AQ'}, + {name: 'Antigua and Barbuda', code: 'AG'}, + {name: 'Argentina', code: 'AR'}, + {name: 'Armenia', code: 'AM'}, + {name: 'Aruba', code: 'AW'}, + {name: 'Australia', code: 'AU'}, + {name: 'Austria', code: 'AT'}, + {name: 'Azerbaijan', code: 'AZ'}, + {name: 'Bahamas', code: 'BS'}, + {name: 'Bahrain', code: 'BH'}, + {name: 'Bangladesh', code: 'BD'}, + {name: 'Barbados', code: 'BB'}, + {name: 'Belarus', code: 'BY'}, + {name: 'Belgium', code: 'BE'}, + {name: 'Belize', code: 'BZ'}, + {name: 'Benin', code: 'BJ'}, + {name: 'Bermuda', code: 'BM'}, + {name: 'Bhutan', code: 'BT'}, + {name: 'Bolivia', code: 'BO'}, + {name: 'Bosnia and Herzegovina', code: 'BA'}, + {name: 'Botswana', code: 'BW'}, + {name: 'Bouvet Island', code: 'BV'}, + {name: 'Brazil', code: 'BR'}, + {name: 'British Indian Ocean Territory', code: 'IO'}, + {name: 'Brunei Darussalam', code: 'BN'}, + {name: 'Bulgaria', code: 'BG'}, + {name: 'Burkina Faso', code: 'BF'}, + {name: 'Burundi', code: 'BI'}, + {name: 'Cambodia', code: 'KH'}, + {name: 'Cameroon', code: 'CM'}, + {name: 'Canada', code: 'CA'}, + {name: 'Cape Verde', code: 'CV'}, + {name: 'Cayman Islands', code: 'KY'}, + {name: 'Central African Republic', code: 'CF'}, + {name: 'Chad', code: 'TD'}, + {name: 'Chile', code: 'CL'}, + {name: 'China', code: 'CN'}, + {name: 'Christmas Island', code: 'CX'}, + {name: 'Cocos (Keeling) Islands', code: 'CC'}, + {name: 'Colombia', code: 'CO'}, + {name: 'Comoros', code: 'KM'}, + {name: 'Congo', code: 'CG'}, + {name: 'Congo, The Democratic Republic of the', code: 'CD'}, + {name: 'Cook Islands', code: 'CK'}, + {name: 'Costa Rica', code: 'CR'}, + {name: 'Cote D\'Ivoire', code: 'CI'}, + {name: 'Croatia', code: 'HR'}, + {name: 'Cuba', code: 'CU'}, + {name: 'Cyprus', code: 'CY'}, + {name: 'Czech Republic', code: 'CZ'}, + {name: 'Denmark', code: 'DK'}, + {name: 'Djibouti', code: 'DJ'}, + {name: 'Dominica', code: 'DM'}, + {name: 'Dominican Republic', code: 'DO'}, + {name: 'Ecuador', code: 'EC'}, + {name: 'Egypt', code: 'EG'}, + {name: 'El Salvador', code: 'SV'}, + {name: 'Equatorial Guinea', code: 'GQ'}, + {name: 'Eritrea', code: 'ER'}, + {name: 'Estonia', code: 'EE'}, + {name: 'Ethiopia', code: 'ET'}, + {name: 'Falkland Islands (Malvinas)', code: 'FK'}, + {name: 'Faroe Islands', code: 'FO'}, + {name: 'Fiji', code: 'FJ'}, + {name: 'Finland', code: 'FI'}, + {name: 'France', code: 'FR'}, + {name: 'French Guiana', code: 'GF'}, + {name: 'French Polynesia', code: 'PF'}, + {name: 'French Southern Territories', code: 'TF'}, + {name: 'Gabon', code: 'GA'}, + {name: 'Gambia', code: 'GM'}, + {name: 'Georgia', code: 'GE'}, + {name: 'Germany', code: 'DE'}, + {name: 'Ghana', code: 'GH'}, + {name: 'Gibraltar', code: 'GI'}, + {name: 'Greece', code: 'GR'}, + {name: 'Greenland', code: 'GL'}, + {name: 'Grenada', code: 'GD'}, + {name: 'Guadeloupe', code: 'GP'}, + {name: 'Guam', code: 'GU'}, + {name: 'Guatemala', code: 'GT'}, + {name: 'Guernsey', code: 'GG'}, + {name: 'Guinea', code: 'GN'}, + {name: 'Guinea-Bissau', code: 'GW'}, + {name: 'Guyana', code: 'GY'}, + {name: 'Haiti', code: 'HT'}, + {name: 'Heard Island and Mcdonald Islands', code: 'HM'}, + {name: 'Holy See (Vatican City State)', code: 'VA'}, + {name: 'Honduras', code: 'HN'}, + {name: 'Hong Kong', code: 'HK'}, + {name: 'Hungary', code: 'HU'}, + {name: 'Iceland', code: 'IS'}, + {name: 'India', code: 'IN'}, + {name: 'Indonesia', code: 'ID'}, + {name: 'Iran, Islamic Republic Of', code: 'IR'}, + {name: 'Iraq', code: 'IQ'}, + {name: 'Ireland', code: 'IE'}, + {name: 'Isle of Man', code: 'IM'}, + {name: 'Israel', code: 'IL'}, + {name: 'Italy', code: 'IT'}, + {name: 'Jamaica', code: 'JM'}, + {name: 'Japan', code: 'JP'}, + {name: 'Jersey', code: 'JE'}, + {name: 'Jordan', code: 'JO'}, + {name: 'Kazakhstan', code: 'KZ'}, + {name: 'Kenya', code: 'KE'}, + {name: 'Kiribati', code: 'KI'}, + {name: 'Korea, Democratic People\'S Republic of', code: 'KP'}, + {name: 'Korea, Republic of', code: 'KR'}, + {name: 'Kuwait', code: 'KW'}, + {name: 'Kyrgyzstan', code: 'KG'}, + {name: 'Lao People\'S Democratic Republic', code: 'LA'}, + {name: 'Latvia', code: 'LV'}, + {name: 'Lebanon', code: 'LB'}, + {name: 'Lesotho', code: 'LS'}, + {name: 'Liberia', code: 'LR'}, + {name: 'Libyan Arab Jamahiriya', code: 'LY'}, + {name: 'Liechtenstein', code: 'LI'}, + {name: 'Lithuania', code: 'LT'}, + {name: 'Luxembourg', code: 'LU'}, + {name: 'Macao', code: 'MO'}, + {name: 'Macedonia, The Former Yugoslav Republic of', code: 'MK'}, + {name: 'Madagascar', code: 'MG'}, + {name: 'Malawi', code: 'MW'}, + {name: 'Malaysia', code: 'MY'}, + {name: 'Maldives', code: 'MV'}, + {name: 'Mali', code: 'ML'}, + {name: 'Malta', code: 'MT'}, + {name: 'Marshall Islands', code: 'MH'}, + {name: 'Martinique', code: 'MQ'}, + {name: 'Mauritania', code: 'MR'}, + {name: 'Mauritius', code: 'MU'}, + {name: 'Mayotte', code: 'YT'}, + {name: 'Mexico', code: 'MX'}, + {name: 'Micronesia, Federated States of', code: 'FM'}, + {name: 'Moldova, Republic of', code: 'MD'}, + {name: 'Monaco', code: 'MC'}, + {name: 'Mongolia', code: 'MN'}, + {name: 'Montserrat', code: 'MS'}, + {name: 'Morocco', code: 'MA'}, + {name: 'Mozambique', code: 'MZ'}, + {name: 'Myanmar', code: 'MM'}, + {name: 'Namibia', code: 'NA'}, + {name: 'Nauru', code: 'NR'}, + {name: 'Nepal', code: 'NP'}, + {name: 'Netherlands', code: 'NL'}, + {name: 'Netherlands Antilles', code: 'AN'}, + {name: 'New Caledonia', code: 'NC'}, + {name: 'New Zealand', code: 'NZ'}, + {name: 'Nicaragua', code: 'NI'}, + {name: 'Niger', code: 'NE'}, + {name: 'Nigeria', code: 'NG'}, + {name: 'Niue', code: 'NU'}, + {name: 'Norfolk Island', code: 'NF'}, + {name: 'Northern Mariana Islands', code: 'MP'}, + {name: 'Norway', code: 'NO'}, + {name: 'Oman', code: 'OM'}, + {name: 'Pakistan', code: 'PK'}, + {name: 'Palau', code: 'PW'}, + {name: 'Palestinian Territory, Occupied', code: 'PS'}, + {name: 'Panama', code: 'PA'}, + {name: 'Papua New Guinea', code: 'PG'}, + {name: 'Paraguay', code: 'PY'}, + {name: 'Peru', code: 'PE'}, + {name: 'Philippines', code: 'PH'}, + {name: 'Pitcairn', code: 'PN'}, + {name: 'Poland', code: 'PL'}, + {name: 'Portugal', code: 'PT'}, + {name: 'Puerto Rico', code: 'PR'}, + {name: 'Qatar', code: 'QA'}, + {name: 'Reunion', code: 'RE'}, + {name: 'Romania', code: 'RO'}, + {name: 'Russian Federation', code: 'RU'}, + {name: 'RWANDA', code: 'RW'}, + {name: 'Saint Helena', code: 'SH'}, + {name: 'Saint Kitts and Nevis', code: 'KN'}, + {name: 'Saint Lucia', code: 'LC'}, + {name: 'Saint Pierre and Miquelon', code: 'PM'}, + {name: 'Saint Vincent and the Grenadines', code: 'VC'}, + {name: 'Samoa', code: 'WS'}, + {name: 'San Marino', code: 'SM'}, + {name: 'Sao Tome and Principe', code: 'ST'}, + {name: 'Saudi Arabia', code: 'SA'}, + {name: 'Senegal', code: 'SN'}, + {name: 'Serbia and Montenegro', code: 'CS'}, + {name: 'Seychelles', code: 'SC'}, + {name: 'Sierra Leone', code: 'SL'}, + {name: 'Singapore', code: 'SG'}, + {name: 'Slovakia', code: 'SK'}, + {name: 'Slovenia', code: 'SI'}, + {name: 'Solomon Islands', code: 'SB'}, + {name: 'Somalia', code: 'SO'}, + {name: 'South Africa', code: 'ZA'}, + {name: 'South Georgia and the South Sandwich Islands', code: 'GS'}, + {name: 'Spain', code: 'ES'}, + {name: 'Sri Lanka', code: 'LK'}, + {name: 'Sudan', code: 'SD'}, + {name: 'Suriname', code: 'SR'}, + {name: 'Svalbard and Jan Mayen', code: 'SJ'}, + {name: 'Swaziland', code: 'SZ'}, + {name: 'Sweden', code: 'SE'}, + {name: 'Switzerland', code: 'CH'}, + {name: 'Syrian Arab Republic', code: 'SY'}, + {name: 'Taiwan, Province of China', code: 'TW'}, + {name: 'Tajikistan', code: 'TJ'}, + {name: 'Tanzania, United Republic of', code: 'TZ'}, + {name: 'Thailand', code: 'TH'}, + {name: 'Timor-Leste', code: 'TL'}, + {name: 'Togo', code: 'TG'}, + {name: 'Tokelau', code: 'TK'}, + {name: 'Tonga', code: 'TO'}, + {name: 'Trinidad and Tobago', code: 'TT'}, + {name: 'Tunisia', code: 'TN'}, + {name: 'Turkey', code: 'TR'}, + {name: 'Turkmenistan', code: 'TM'}, + {name: 'Turks and Caicos Islands', code: 'TC'}, + {name: 'Tuvalu', code: 'TV'}, + {name: 'Uganda', code: 'UG'}, + {name: 'Ukraine', code: 'UA'}, + {name: 'United Arab Emirates', code: 'AE'}, + {name: 'United Kingdom', code: 'GB'}, + {name: 'United States', code: 'US'}, + {name: 'United States Minor Outlying Islands', code: 'UM'}, + {name: 'Uruguay', code: 'UY'}, + {name: 'Uzbekistan', code: 'UZ'}, + {name: 'Vanuatu', code: 'VU'}, + {name: 'Venezuela', code: 'VE'}, + {name: 'Viet Nam', code: 'VN'}, + {name: 'Virgin Islands, British', code: 'VG'}, + {name: 'Virgin Islands, U.S.', code: 'VI'}, + {name: 'Wallis and Futuna', code: 'WF'}, + {name: 'Western Sahara', code: 'EH'}, + {name: 'Yemen', code: 'YE'}, + {name: 'Zambia', code: 'ZM'}, + {name: 'Zimbabwe', code: 'ZW'} +] diff --git a/src/app/services/usage-stats-dump.ts b/src/app/services/usage-stats-dump.ts new file mode 100644 index 0000000..f8f64ed --- /dev/null +++ b/src/app/services/usage-stats-dump.ts @@ -0,0 +1,82 @@ +import {UsageStat} from "../entities/usage-stat"; + +export const usageStats: UsageStat[] = [ + { + country: "all", + total_repositories: "146", + total_views: "1048848445", + total_downloads: "449040672" + }, + { + country: "Argentina", + total_repositories: "1", + total_views: "29887623", + total_downloads: "4978695" + }, + { + country: "Belgium", + total_repositories: "1", + total_views: "148167939", + total_downloads: "23609189" + }, + { + country: "Colombia", + total_repositories: "1", + total_views: "3869367", + total_downloads: "4522021" + }, + { + country: "Croatia", + total_repositories: "1", + total_views: "3500741", + total_downloads: "690373" + }, + { + country: "France", + total_repositories: "3", + total_views: "21116458", + total_downloads: "2754498" + }, + { + country: "Germany", + total_repositories: "4", + total_views: "63102058", + total_downloads: "16305145" + }, + { + country: "Italy", + total_repositories: "1", + total_views: "3046747", + total_downloads: "1338795" + }, + { + country: "Portugal", + total_repositories: "35", + total_views: "335856506", + total_downloads: "65435037" + }, + { + country: "Serbia", + total_repositories: "12", + total_views: "19518768", + total_downloads: "1999046" + }, + { + country: "Spain", + total_repositories: "5", + total_views: "124446360", + total_downloads: "67580526" + }, + { + country: "Switzerland", + total_repositories: "2", + total_views: "296335878", + total_downloads: "47218378" + }, + { + country: "United Kingdom", + total_repositories: "80", + total_views: "0", + total_downloads: "212608969" + } +]; diff --git a/src/app/services/usage-stats.service.ts b/src/app/services/usage-stats.service.ts new file mode 100644 index 0000000..f6812e8 --- /dev/null +++ b/src/app/services/usage-stats.service.ts @@ -0,0 +1,21 @@ +import {Injectable} from "@angular/core"; +import {HttpClient} from "@angular/common/http"; +import {UsageStat} from "../entities/usage-stat"; +import {BehaviorSubject, Observable} from "rxjs"; +import {usageStats} from "./usage-stats-dump"; + +@Injectable({ + providedIn: "root" +}) +export class UsageStatsService { + + private usageStats: BehaviorSubject; + + constructor(private http: HttpClient) { + this.usageStats = new BehaviorSubject(usageStats); + } + + getUsageStats(): Observable { + return this.usageStats.asObservable(); + } +} diff --git a/src/assets/env-properties.json b/src/assets/env-properties.json deleted file mode 100644 index 2653809..0000000 --- a/src/assets/env-properties.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "environment":"development", - "enablePiwikTrack" : false, - "useCache" : false, - "metricsAPIURL" : "https://beta.services.openaire.eu/usagestats/", - "framesAPIURL" : "https://beta.openaire.eu/stats3/", - "claimsAPIURL" : "http://dl170.madgik.di.uoa.gr:8180/dnet-claims-service-2.0.0-SNAPSHOT/rest/claimsService/", - "statisticsAPIURL" : "https://beta.services.openaire.eu/stats-api/", - "statisticsFrameAPIURL":"https://beta.openaire.eu/stats/", - "statisticsFrameNewAPIURL": "http://marilyn.athenarc.gr:8080/stats-api/", - "useNewStatistisTool":false, - "searchAPIURLLAst" : "https://beta.services.openaire.eu/search/v2/api/", - "searchResourcesAPIURL" : "https://beta.services.openaire.eu/search/v2/api/resources", - "openCitationsAPIURL" : "https://services.openaire.eu/opencitations/getCitations?id=", - "csvAPIURL" : "http://rudie.di.uoa.gr:8080/dnet-functionality-services-2.0.0-SNAPSHOT/rest/v2/reports", - "searchCrossrefAPIURL" : "https://api.crossref.org/works", - "searchDataciteAPIURL" : "https://api.datacite.org/works", - "searchOrcidURL" : "https://pub.orcid.org/", - "orcidURL" : "https://orcid.org/", - "doiURL" : "https://dx.doi.org/", - "cordisURL" : "http://cordis.europa.eu/projects/", - "openDoarURL": "http://v2.sherpa.ac.uk/id/repository/", - "r3DataURL": "http://service.re3data.org/repository/", - "sherpaURL": "http://www.sherpa.ac.uk/romeo/search.php?issn=", - "zenodo" : "https://zenodo.org/", - "zenodoCommunities" : "https://zenodo.org/api/communities/", - "openAccess" : "https://www.openaire.eu/support/faq#article-id-234", - "openAccessRepo" : "https://www.openaire.eu/support/faq#article-id-310", - "fp7Guidlines" : "https://www.openaire.eu/open-access-in-fp7-seventh-research-framework-programme", - "h2020Guidlines" : "https://www.openaire.eu/oa-publications/h2020/open-access-in-horizon-2020", - "ercGuidlines" : "http://erc.europa.eu/sites/default/files/document/file/ERC_Open_Access_Guidelines-revised_2014.pdf", - "helpdesk" : "https://www.openaire.eu/support/helpdesk", - "helpdeskEmail": "helpdesk@openaire.eu", - "utilsService" : "http://mpagasas.di.uoa.gr:8000", - - "vocabulariesAPI" :"https://beta.services.openaire.eu/provision/mvc/vocabularies/", - - "piwikBaseUrl" :" https://analytics.openaire.eu/piwik.php?idsite=6", - "loginUrl" :"http://dl170.madgik.di.uoa.gr:8180/dnet-login/openid_connect_login", - - "userInfoUrl" : "http://dl170.madgik.di.uoa.gr:8180/dnet-openaire-users-1.0.0-SNAPSHOT/api/users/getUserInfo?accessToken=", - "logoutUrl" :"https://aai.openaire.eu/proxy/saml2/idp/SingleLogoutService.php?ReturnTo=", - - "cookieDomain" :".di.uoa.gr", - - "feedbackmail" :"openaire.test@gmail.com", - "feedbackmailForMissingEntities" :"feedback@openaire.eu", - "cacheUrl" :"http://scoobydoo.di.uoa.gr:3000/get?url=", - - "adminToolsAPIURL" :"http://duffy.di.uoa.gr:8080/uoa-admin-tools/", - - "adminToolsCommunity" :"openaire", - "communityAPI": "https://dev-openaire.d4science.org/openaire/community/", - - "miningBackendURL": "https://beta.services.openaire.eu/interactive-mining", - - "csvLimit": 2000, - "pagingLimit": 20, - "resultsPerPage": 10, - - "baseLink" : "https://demo.openaire.eu", - "baseOpenaireLink" : "https://beta.explore.openaire.eu", - - "searchLinkToPublication" : "/search/publication?articleId=", - "searchLinkToProject" : "/search/project?projectId=", - "searchLinkToDataProvider" : "/search/dataprovider?datasourceId=", - "searchLinkToDataset" : "/search/dataset?datasetId=", - "searchLinkToOrganization" : "/search/organization?organizationId=", - - "searchLinkToPublications" : "/search/find/publications", - "searchLinkToDataProviders" : "/search/find/dataproviders", - "searchLinkToProjects" : "/search/find/projects", - "searchLinkToDatasets" : "/search/find/datasets", - "searchLinkToSoftware" : "/search/find/software", - "searchLinkToOrganizations" : "/search/find/organizations", - "searchLinkToCompatibleDataProviders" : "/search/content-providers", - "searchLinkToEntityRegistriesDataProviders" : "/search/entity-registries", - "searchLinkToEntityRegistriesDataProvidersTable" : "/search/entity-registries-table", - "searchLinkToJournals" : "/search/journals", - "searchLinkToJournalsTable" : "/search/journals-table", - - "searchLinkToAdvancedPublications" : "/search/advanced/publications", - "searchLinkToAdvancedProjects" : "/search/advanced/projects", - "searchLinkToAdvancedDatasets" : "/search/advanced/datasets", - "searchLinkToAdvancedSoftware" : "/search/advanced/software", - "searchLinkToAdvancedDataProviders" : "/search/advanced/dataproviders", - "searchLinkToAdvancedOrganizations" : "/search/advanced/organizations", - - "sendMailUrl": "http://duffy.di.uoa.gr:8080/uoa-admin-tools/sendMail", - "notifyForNewManagers": "http://duffy.di.uoa.gr:8080/uoa-admin-tools/notifyForNewManagers/", - "notifyForNewSubscribers": "http://duffy.di.uoa.gr:8080/uoa-admin-tools/notifyForNewSubscribers/", - - "lastIndexInformationLink" : "https://www.openaire.eu/aggregation-and-content-provision-workflows", - "showLastIndexInformationLink" : false, - - "widgetLink" : "https://beta.openaire.eu/index.php?option=com_openaire&view=widget&format=raw&projectId=", - "claimsInformationLink": "https://www.openaire.eu/linking-beta", - "lastIndexUpdate": "2019-05-16", - "indexInfoAPI": "http://beta.services.openaire.eu/openaire/info/", - "admins" : ["kostis30fylloy@gmail.com"], - "adminPortalURL": "https://beta.admin.connect.openaire.eu" -} diff --git a/src/assets/usage-statistics-assets/home/2.svg b/src/assets/usage-statistics-assets/home/2.svg new file mode 100644 index 0000000..b524a84 --- /dev/null +++ b/src/assets/usage-statistics-assets/home/2.svg @@ -0,0 +1,1375 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/usage-statistics-assets/home/3.svg b/src/assets/usage-statistics-assets/home/3.svg new file mode 100644 index 0000000..e4d206a --- /dev/null +++ b/src/assets/usage-statistics-assets/home/3.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/usage-statistics-assets/home/4.svg b/src/assets/usage-statistics-assets/home/4.svg new file mode 100644 index 0000000..7a3b611 --- /dev/null +++ b/src/assets/usage-statistics-assets/home/4.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/assets/usage-statistics-assets/home/5.svg b/src/assets/usage-statistics-assets/home/5.svg new file mode 100644 index 0000000..90a2b22 --- /dev/null +++ b/src/assets/usage-statistics-assets/home/5.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/usage-statistics-assets/home/6.svg b/src/assets/usage-statistics-assets/home/6.svg new file mode 100644 index 0000000..586d598 --- /dev/null +++ b/src/assets/usage-statistics-assets/home/6.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/assets/usage-statistics-assets/home/search.svg b/src/assets/usage-statistics-assets/home/search.svg new file mode 100644 index 0000000..51d80b7 --- /dev/null +++ b/src/assets/usage-statistics-assets/home/search.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/index.html b/src/index.html index 45834a4..d9348b2 100644 --- a/src/index.html +++ b/src/index.html @@ -2,30 +2,29 @@ + + OpenAIRE | Usage Statistics - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + diff --git a/src/styles.css b/src/styles.css index 914291a..e7b4b2a 100644 --- a/src/styles.css +++ b/src/styles.css @@ -13,10 +13,10 @@ body, html { height: 100%; } -body { +main { background-color: #F9FBFC; color: #333333; - min-height: 100vh; + min-height: calc(100vh - 100px); font-size: 16px; line-height: 21px; }