From e1420f0d915cbe323906a3ffe706a3eb54211b0d Mon Sep 17 00:00:00 2001 From: Demian Katz <demian.katz@villanova.edu> Date: Tue, 6 Jan 2015 14:23:46 -0500 Subject: [PATCH] Smarter capability checking - hide unsupported ILS features. --- .../blueprint/templates/myresearch/menu.phtml | 16 ++++++-- .../templates/myresearch/menu.phtml | 40 +++++++++++-------- .../templates/myresearch/header-navbar.phtml | 12 ++++-- 3 files changed, 45 insertions(+), 23 deletions(-) diff --git a/themes/blueprint/templates/myresearch/menu.phtml b/themes/blueprint/templates/myresearch/menu.phtml index a1b6c496e0d..abe0d6d472c 100644 --- a/themes/blueprint/templates/myresearch/menu.phtml +++ b/themes/blueprint/templates/myresearch/menu.phtml @@ -5,16 +5,24 @@ <li<?=$this->active == 'favorites' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-favorites')?>"><?=$this->transEsc('Favorites')?></a></li> <? endif; ?> <? if ('ils-none' !== $this->ils()->getOfflineMode()): ?> - <li<?=$this->active == 'checkedout' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-checkedout')?>"><?=$this->transEsc('Checked Out Items')?></a></li> - <li<?=$this->active == 'holds' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-holds')?>"><?=$this->transEsc('Holds and Recalls')?></a></li> + <? if ($this->ils()->checkCapability('getMyTransactions')): ?> + <li<?=$this->active == 'checkedout' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-checkedout')?>"><?=$this->transEsc('Checked Out Items')?></a></li> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyHolds')): ?> + <li<?=$this->active == 'holds' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-holds')?>"><?=$this->transEsc('Holds and Recalls')?></a></li> + <? endif; ?> <? if ($this->ils()->checkFunction('StorageRetrievalRequests')): ?> <li<?=$this->active == 'storageRetrievalRequests' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-storageretrievalrequests')?>"><?=$this->transEsc('Storage Retrieval Requests')?></a></li> <? endif; ?> <? if ($this->ils()->checkFunction('ILLRequests')): ?> <li<?=$this->active == 'ILLRequests' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-illrequests')?>"><?=$this->transEsc('Interlibrary Loan Requests')?></a></li> <? endif; ?> - <li<?=$this->active == 'fines' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-fines')?>"><?=$this->transEsc('Fines')?></a></li> - <li<?=$this->active == 'profile' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-profile')?>"><?=$this->transEsc('Profile')?></a></li> + <? if ($this->ils()->checkCapability('getMyFines')): ?> + <li<?=$this->active == 'fines' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-fines')?>"><?=$this->transEsc('Fines')?></a></li> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyProfile')): ?> + <li<?=$this->active == 'profile' ? ' class="active"' : ''?>><a href="<?=$this->url('myresearch-profile')?>"><?=$this->transEsc('Profile')?></a></li> + <? endif; ?> <? endif; ?> <li<?=$this->active == 'history' ? ' class="active"' : ''?>><a href="<?=$this->url('search-history')?>?require_login"><?=$this->transEsc('history_saved_searches')?></a></li> </ul> diff --git a/themes/bootstrap3/templates/myresearch/menu.phtml b/themes/bootstrap3/templates/myresearch/menu.phtml index bf7e220d4ab..41daba3c915 100644 --- a/themes/bootstrap3/templates/myresearch/menu.phtml +++ b/themes/bootstrap3/templates/myresearch/menu.phtml @@ -7,14 +7,18 @@ </a> <? endif; ?> <? if ('ils-none' !== $this->ils()->getOfflineMode()): ?> - <a href="<?=$this->url('myresearch-checkedout')?>" class="list-group-item<?=$this->active == 'checkedout' ? ' active' : ''?>"> - <?=$this->transEsc('Checked Out Items')?> - <span class="pull-right"><i class="fa fa-book"></i></span> - </a> - <a href="<?=$this->url('myresearch-holds')?>" class="list-group-item<?=$this->active == 'holds' ? ' active' : ''?>"> - <?=$this->transEsc('Holds and Recalls')?> - <span class="pull-right"><i class="fa fa-flag"></i></span> - </a> + <? if ($this->ils()->checkCapability('getMyTransactions')): ?> + <a href="<?=$this->url('myresearch-checkedout')?>" class="list-group-item<?=$this->active == 'checkedout' ? ' active' : ''?>"> + <?=$this->transEsc('Checked Out Items')?> + <span class="pull-right"><i class="fa fa-book"></i></span> + </a> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyHolds')): ?> + <a href="<?=$this->url('myresearch-holds')?>" class="list-group-item<?=$this->active == 'holds' ? ' active' : ''?>"> + <?=$this->transEsc('Holds and Recalls')?> + <span class="pull-right"><i class="fa fa-flag"></i></span> + </a> + <? endif; ?> <? if ($this->ils()->checkFunction('StorageRetrievalRequests')): ?> <a href="<?=$this->url('myresearch-storageretrievalrequests')?>" class="list-group-item<?=$this->active == 'storageRetrievalRequests' ? ' active' : ''?>"> <?=$this->transEsc('Storage Retrieval Requests')?> @@ -27,14 +31,18 @@ <span class="pull-right"><i class="fa fa-exchange"></i></span> </a> <? endif; ?> - <a href="<?=$this->url('myresearch-fines')?>" class="list-group-item<?=$this->active == 'fines' ? ' active' : ''?>"> - <?=$this->transEsc('Fines')?> - <span class="pull-right"><i class="fa fa-usd"></i></span> - </a> - <a href="<?=$this->url('myresearch-profile')?>" class="list-group-item<?=$this->active == 'profile' ? ' active' : ''?>"> - <?=$this->transEsc('Profile')?> - <span class="pull-right"><i class="fa fa-user"></i></span> - </a> + <? if ($this->ils()->checkCapability('getMyFines')): ?> + <a href="<?=$this->url('myresearch-fines')?>" class="list-group-item<?=$this->active == 'fines' ? ' active' : ''?>"> + <?=$this->transEsc('Fines')?> + <span class="pull-right"><i class="fa fa-usd"></i></span> + </a> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyProfile')): ?> + <a href="<?=$this->url('myresearch-profile')?>" class="list-group-item<?=$this->active == 'profile' ? ' active' : ''?>"> + <?=$this->transEsc('Profile')?> + <span class="pull-right"><i class="fa fa-user"></i></span> + </a> + <? endif; ?> <? endif; ?> <a href="<?=$this->url('search-history')?>?require_login" class="list-group-item<?=$this->active == 'history' ? ' active' : ''?>"> <?=$this->transEsc('history_saved_searches')?> diff --git a/themes/jquerymobile/templates/myresearch/header-navbar.phtml b/themes/jquerymobile/templates/myresearch/header-navbar.phtml index 67ab366bd64..ef5187198fd 100644 --- a/themes/jquerymobile/templates/myresearch/header-navbar.phtml +++ b/themes/jquerymobile/templates/myresearch/header-navbar.phtml @@ -1,9 +1,15 @@ <? if ($this->auth()->isLoggedIn() && 'ils-none' !== $this->ils()->getOfflineMode()): ?> <div data-role="navbar"> <ul> - <li><a rel="external" <?=$this->layout()->templateName=="checkedout" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-checkedout')?>"><?=$this->transEsc('Checked Out')?></a></li> - <li><a rel="external" <?=$this->layout()->templateName=="holds" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-holds')?>"><?=$this->transEsc('Holds')?></a></li> - <li><a rel="external" <?=$this->layout()->templateName=="fines" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-fines')?>"><?=$this->transEsc('Fines')?></a></li> + <? if ($this->ils()->checkCapability('getMyTransactions')): ?> + <li><a rel="external" <?=$this->layout()->templateName=="checkedout" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-checkedout')?>"><?=$this->transEsc('Checked Out')?></a></li> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyHolds')): ?> + <li><a rel="external" <?=$this->layout()->templateName=="holds" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-holds')?>"><?=$this->transEsc('Holds')?></a></li> + <? endif; ?> + <? if ($this->ils()->checkCapability('getMyFines')): ?> + <li><a rel="external" <?=$this->layout()->templateName=="fines" ? ' class="ui-btn-active"' : ''?> href="<?=$this->url('myresearch-fines')?>"><?=$this->transEsc('Fines')?></a></li> + <? endif; ?> </ul> </div> <? endif; ?> \ No newline at end of file -- GitLab