Project

General

Profile

1
import { Component } from '@angular/core';
2
import 'rxjs/Rx';
3
import {ActivatedRoute, Router} from '@angular/router';
4

    
5
import {Session} from '../login/utils/helper.class';
6

    
7
@Component({
8
  selector: 'navbar',
9
  template: `
10

    
11

    
12

    
13
  <div class="tm-header-mobile uk-hidden@m">
14
     <nav class="uk-navbar-container uk-navbar" uk-navbar="">
15
        <div class="uk-navbar-left">
16
           <a class="uk-navbar-toggle" href="#tm-mobile" uk-toggle="" style="z-index:1000;">
17
              <div uk-navbar-toggle-icon="" class="uk-navbar-toggle-icon uk-icon custom-navbar-toggle-icon"> </div>
18
           </a>
19
        </div>
20
        <div class="uk-navbar-center">
21
           <a class="uk-navbar-item uk-logo"  routerLinkActive="uk-link" routerLink="/" >
22
           <img src="assets/OA DISCOVER_A.png" alt="OpenAIRE" class="uk-responsive-height">        </a>
23
        </div>
24
        <!--div class="uk-navbar-right uk-margin-xlarge-top">
25
           <user-mini></user-mini>
26
        </div-->
27
     </nav>
28
     <div id="tm-mobile" uk-offcanvas="" mode="slide" overlay="" class="uk-offcanvas">
29
        <div class="uk-offcanvas-bar">
30
           <button class="uk-offcanvas-close uk-close uk-icon" type="button" uk-close=""></button>
31
           <div class="uk-child-width-1-1 uk-grid" uk-grid="">
32
              <div>
33
                 <div  *ngIf= "isClient" class="uk-panel" id="module-0">
34
                    <ul class="uk-nav uk-nav-default">
35
                       <li class="uk-nav-header uk-parent">
36
                          <a routerLinkActive="uk-link" routerLink="/search/find"  class="uk-offcanvas-close custom-offcanvas-close">Search</a>
37
                          <ul class="uk-nav-sub">
38
                             <li><a routerLinkActive="uk-link" routerLink="/search/find/publications"  class="uk-offcanvas-close custom-offcanvas-close">Publications</a></li>
39
                             <li><a routerLinkActive="uk-link" routerLink="/search/find/datasets"  class="uk-offcanvas-close custom-offcanvas-close">Research Data</a></li>
40
                             <li><a routerLinkActive="uk-link" routerLink="/search/find/projects"  class="uk-offcanvas-close custom-offcanvas-close">Projects</a></li>
41
                             <li><a routerLinkActive="uk-link" routerLink="/search/find/dataproviders"  class="uk-offcanvas-close custom-offcanvas-close">Content Providers</a></li>
42
                             <li><a routerLinkActive="uk-link" routerLink="/search/find/organizations"  class="uk-offcanvas-close custom-offcanvas-close">Organizations</a></li>
43
                          </ul>
44
                       </li>
45

    
46
                       <li class="uk-nav-header uk-parent">
47
                           Deposit
48
                           <ul class="uk-nav-sub">
49
                             <li><a  routerLinkActive="uk-link" routerLink="/participate/deposit-publications"  class="uk-offcanvas-close custom-offcanvas-close" >Deposit Publications</a></li>
50
                             <li><a   routerLinkActive="uk-link" routerLink="/participate/deposit-datasets"  class="uk-offcanvas-close custom-offcanvas-close" >Deposit Research Data</a></li>
51
                          </ul>
52
                       </li>
53
                       <li class="uk-nav-header uk-parent">
54
                           <a  routerLinkActive="uk-link" routerLink="/participate/claim"  class="" aria-expanded="false">Link</a>
55
                           <!--ul class="uk-nav-sub">
56
                             <li><a  routerLinkActive="uk-link" routerLink="/participate/claim"  class="uk-offcanvas-close custom-offcanvas-close" >Link</a></li>
57
                             <li><a   routerLinkActive="uk-link" routerLink="/myclaims"  class="uk-offcanvas-close custom-offcanvas-close">My Claims</a></li>
58
                             <li *ngIf="isAuthorized"><a   routerLinkActive="uk-link" routerLink="/claims"  class="uk-offcanvas-close custom-offcanvas-close">Manage all Claims</a></li>
59
                          </ul-->
60
                       </li>
61
                       <li class="uk-nav-header uk-parent">
62
                         Resources
63
                         <ul class="uk-nav-sub">
64
                           <li><a href="https://beta.openaire.eu/oa-policies-mandates"  class="uk-offcanvas-close custom-offcanvas-close" >Policies and mandates</a></li>
65
                           <li><a routerLinkActive="uk-link" routerLink="/search/content-providers"  class="uk-offcanvas-close custom-offcanvas-close" >OpenAIRE Content Providers</a></li>
66
                           <li><a routerLinkActive="uk-link" routerLink="/search/entity-registries"  class="uk-offcanvas-close custom-offcanvas-close" >Registries/ Databases</a></li>
67
                           <li><a routerLinkActive="uk-link" routerLink="/search/journals"  class="uk-offcanvas-close custom-offcanvas-close" >Journals</a></li>
68
                        </ul>
69
                       </li>
70
                       <user-mini mobileView=true></user-mini>
71
                    </ul>
72
                 </div>
73
              </div>
74

    
75
           </div>
76
        </div>
77
     </div>
78
  </div>
79
  <div class="tm-toolbar custom-discover-toolbar uk-visible@m">
80
     <div class="uk-container uk-flex uk-flex-middle uk-container-expand">
81
        <div class="uk-margin-auto-left">
82
           <div class="uk-grid-medium uk-child-width-auto uk-flex-middle uk-grid uk-grid-stack" uk-grid="margin: uk-margin-small-top">
83
              <div class="uk-first-column">
84
                 <div class="uk-panel inner" id="module-119">
85
                    <ul class="uk-subnav uk-subnav-line">
86
                       <li ><a href="https://beta.openaire.eu" class="home-icon"><span class="uk-responsive-height" >
87
                        <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 20 20" height="20px" id="Layer_1" version="1.1" viewBox="0 0 48 48" width="20px" xml:space="preserve"><path id="home" clip-rule="evenodd" d="M44.715,23.711c-0.381,0.382-1,0.382-1.381,0l-8.939-8.938  c-0.064-0.051-0.119-0.106-0.17-0.171l-3.83-3.829c-0.064-0.051-0.119-0.106-0.17-0.171L24,4.377L4.667,23.711  c-0.381,0.382-1,0.382-1.381,0c-0.381-0.381-0.381-1,0-1.381L23.191,2.425c0.031-0.047,0.053-0.101,0.094-0.144  C23.482,2.085,23.742,1.994,24,2c0.258-0.006,0.518,0.084,0.715,0.281c0.043,0.042,0.062,0.096,0.096,0.144L30,7.616V4.997  c0,0,0,0,0,0c0-0.552,0.447-1,1-1h4c0.277,0,0.527,0.112,0.707,0.293C35.889,4.471,36,4.721,36,4.997v8.619l8.715,8.714  C45.096,22.711,45.096,23.33,44.715,23.711z M34,5.997h-2v3.619l2,2V5.997z M10,21.997c0.552,0,1,0.448,1,1v19c0,1.105,0.896,2,2,2  h6l0,0v-13c0-0.553,0.447-1,1-1h8c0.553,0,1,0.447,1,1v13l0,0h6c1.105,0,2-0.895,2-2v-19c0-0.552,0.447-1,1-1s1,0.448,1,1v19  c0,2.209-1.791,4-4,4H13c-2.209,0-4-1.791-4-4v-19C9,22.444,9.448,21.997,10,21.997z M27,43.996v-12h-6v12l0,0H27L27,43.996z" fill-rule="evenodd" fill="#fff"/></svg>
88
                        <!--img class="uk-responsive-height" src="assets/Home_24white.svg" alt="home"-->
89
                       </span></a></li>
90
                       <li class="custom-discover-li"><a  routerLinkActive="uk-link" routerLink="/" >Discover</a></li>
91
                       <li><a >Join</a></li>
92
                       <li><a >Connect</a></li>
93
                       <li><a >Monitor</a></li>
94
                       <li><a >Develop</a></li>
95
                    </ul>
96
                 </div>
97
              </div>
98
           </div>
99
        </div>
100
     </div>
101
  </div>
102
  <div class="tm-header uk-visible@m tm-header-transparent" uk-header="">
103
     <div class="uk-navbar-container uk-sticky uk-navbar-transparent uk-light" uk-sticky="" media="768" cls-active="uk-active uk-navbar-sticky" animation="uk-animation-slide-top" top=".tm-header + [class*=&quot;uk-section&quot;]" cls-inactive="uk-navbar-transparent uk-light" style="">
104
        <div class="uk-container uk-container-expand">
105
           <nav class="uk-navbar" uk-navbar="{&quot;align&quot;:&quot;left&quot;}">
106
              <div class="uk-navbar-left  uk-visible@l  ">
107
                 <a  routerLinkActive="uk-link" routerLink="/"  class="uk-logo uk-navbar-item">
108
                 <img src="assets/OA DISCOVER_B.png" alt="OpenAIRE" class="uk-responsive-height"></a>
109
              </div>
110
              <div class="uk-navbar-left  uk-visible@m uk-hidden@l">
111
                 <a  routerLinkActive="uk-link" routerLink="/"  class="uk-logo uk-navbar-item">
112
                 <img src="assets/OA DISCOVER_A.png" alt="OpenAIRE" class="uk-responsive-height"></a>
113
              </div>
114
              <div class="uk-navbar-center">
115
                 <ul *ngIf= "isClient" class="uk-navbar-nav">
116
                    <li class="uk-parent">
117
                       <a routerLinkActive="uk-link" routerLink="/search/find" class="" aria-expanded="false">Search</a>
118
                       <div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="top: 80px; left: 0px;" id="searchMenu" (click)="onClick('searchMenu')">
119
                          <div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
120
                             <div class="uk-first-column">
121
                                <ul class="uk-nav uk-navbar-dropdown-nav">
122
                                   <li><a routerLinkActive="uk-link" routerLink="/search/find/publications">Publications</a></li>
123
                                   <li><a routerLinkActive="uk-link" routerLink="/search/find/datasets">Research Data</a></li>
124
                                   <li><a routerLinkActive="uk-link" routerLink="/search/find/projects">Projects</a></li>
125
                                   <li><a routerLinkActive="uk-link" routerLink="/search/find/dataproviders">Content Providers</a></li>
126
                                   <li><a routerLinkActive="uk-link" routerLink="/search/find/organizations">Organizations</a></li>
127
                                </ul>
128
                             </div>
129
                          </div>
130
                       </div>
131
                    </li>
132

    
133
                    <li class="uk-parent">
134
                       <a  routerLinkActive="uk-link" routerLink="/participate/deposit-publications" class="" aria-expanded="false">Deposit</a>
135
                       <div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="top: 80px; left: 240px;" id="depositMenu"  (click)="onClick('depositMenu')">
136
                          <div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
137
                             <div class="uk-first-column">
138
                                <ul class="uk-nav uk-navbar-dropdown-nav">
139
                                   <li><a  routerLinkActive="uk-link" routerLink="/participate/deposit-publications">Deposit Publications</a></li>
140
                                   <li><a   routerLinkActive="uk-link" routerLink="/participate/deposit-datasets">Deposit Research Data</a></li>
141
                                </ul>
142
                             </div>
143
                          </div>
144
                       </div>
145
                    </li>
146
                    <li class="uk-parent">
147
                       <a  routerLinkActive="uk-link" routerLink="/participate/claim"  class="" aria-expanded="false">Link</a>
148
                       <!--div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="top: 80px; left: 358px;" id="linkingMenu"   (click)="onClick('linkingMenu')" >
149
                          <div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
150
                             <div class="uk-first-column">
151
                                <ul class="uk-nav uk-navbar-dropdown-nav">
152
                                   <li><a  routerLinkActive="uk-link" routerLink="/participate/claim">Link</a></li>
153
                                   <li><a   routerLinkActive="uk-link" routerLink="/myclaims">My Claims</a></li>
154
                                   <li *ngIf="isAuthorized"><a   routerLinkActive="uk-link" routerLink="/claims">Manage all Claims</a></li>
155
                                </ul>
156
                             </div>
157
                          </div>
158
                       </div-->
159
                    </li>
160
                    <li class="uk-parent">
161
                       <a routerLinkActive="uk-link" routerLink="/search/content-providers" class="" aria-expanded="false">Resources</a>
162
                       <div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="top: 80px; left: 113px;" id="dpMenu"  (click)="onClick('dpMenu')">
163
                          <div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
164
                             <div class="uk-first-column">
165
                                <ul class="uk-nav uk-navbar-dropdown-nav">
166
                                  <li><a href="https://beta.openaire.eu/oa-policies-mandates"  class="uk-offcanvas-close custom-offcanvas-close" >Policies and mandates</a></li>
167
                                   <li><a routerLinkActive="uk-link" routerLink="/search/content-providers">OpenAIRE Content Providers</a></li>
168
                                   <li><a routerLinkActive="uk-link" routerLink="/search/entity-registries">Registries/ Databases</a></li>
169
                                   <li><a routerLinkActive="uk-link" routerLink="/search/journals">Journals</a></li>
170
                                </ul>
171
                             </div>
172
                          </div>
173
                       </div>
174
                    </li>
175
                 </ul>
176
              </div>
177
              <div  *ngIf= "isClient" class="uk-navbar-right">
178
              <!--ul class="uk-navbar-nav">
179
                 <li class="uk-parent"-->
180
                    <user-mini ></user-mini>
181
                    <!--a routerLinkActive="uk-link" routerLink="/search/content-providers" class="" aria-expanded="false">Resources</a-->
182
                    <!--div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left"   id="userMenu"  (click)="onClick('userMenu')">
183
                       <div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
184
                          <div class="uk-first-column">
185
                             <ul class="uk-nav uk-navbar-dropdown-nav">
186
                               <li><a href=""  class="uk-offcanvas-close custom-offcanvas-close" >My profile</a></li>
187
                               <li><a   routerLinkActive="uk-link" routerLink="/myclaims">My Claims</a></li>
188
                               <li *ngIf="isAuthorized"><a   routerLinkActive="uk-link" routerLink="/claims">Manage all Claims</a></li>
189
                                <li><a routerLinkActive="uk-link" routerLink="/login">Log out</a></li>
190
                             </ul>
191
                          </div>
192
                       </div>
193
                    </div-->
194
                 <!--/li>
195
              </ul-->
196
              </div>
197
           </nav>
198
        </div>
199
     </div>
200
     <!--div class="uk-sticky-placeholder" style="height: 80px; margin: 0px;" hidden="hidden"></div>
201
     <div class="uk-sticky-placeholder" style="height: 84px; margin: 0px;" hidden="hidden"></div-->
202
  </div>
203
  <div class="first_page_section uk-section-default uk-section uk-padding-remove-vertical">
204
     <div class="first_page_banner_headline uk-grid-collapse uk-flex-middle uk-margin-remove-vertical uk-grid uk-grid-stack" uk-grid="">
205
     </div>
206
  </div>
207

    
208

    
209

    
210

    
211

    
212

    
213

    
214

    
215
`
216
})
217
export class NavigationBarComponent {
218
  public isAuthorized: boolean = false;
219
  sub:any;
220
  isClient:boolean = false;
221

    
222

    
223
  constructor( private router: Router, private  route: ActivatedRoute) {}
224

    
225
  ngOnInit() {
226
    if (typeof document !== 'undefined') {
227
      try{
228
        this.isClient = true;
229
      }catch (e) {
230
      }
231
    }
232
    this.initialize();
233
    this.sub =  this.route.queryParams.subscribe(params => {
234
      this.initialize();
235
    });
236
  }
237
  ngOnDestroy(){
238
    this.sub.unsubscribe();
239
  }
240
  initialize(){
241
     if(Session.isLoggedIn() && Session.isUserValid() && Session.isAdminUser()){
242
      this.isAuthorized = true;
243
    }else {
244
          this.isAuthorized = false;
245
    }
246

    
247
  }
248
  onClick(id: string) {
249
        var el: HTMLElement = document.getElementById(id);
250
        el.classList.remove('uk-open');
251
    }
252

    
253
}
(2-2/3)