Cambiare la scritta OneDrive in SharePoint 2013
Inserendo uno script JavaScript nella Suite Bar Branding di SharePoint 2013 (in alto a sinistra dove normalmente c'è la scritta SharePoint), è possibile cambiare la scritta OneDrive.
Il JavaScript che modifica il testo, da OneDrive a My Drive in questo esempio, è il seguente:
lo script va inserito tramite il seguente PowerShell su tutte le Web Application:
in questo caso inserisco lo script nei My Site e rendo la scritta Sgart Intranet cliccabile con il rimando alla home della intranet.
Ovviamente la modifica della Suite Bar Branding richiede l'accesso amministrativo alla Farm. In alternativa lo script JS può essere incluso in tutte le master page utilizzate.
Il JavaScript che modifica il testo, da OneDrive a My Drive in questo esempio, è il seguente:
JavaScript
function sgartSuiteLinksBoxOverride(){
try{
var d=document.getElementById("suiteLinksBox");
var s=d.innerHTML;
d.innerHTML=s.replace(">OneDrive<",">My Drive<");
}catch(e){}
}
if (typeof asyncDeltaManager !== "undefined"){
//nel caso fosse attiva la Download Minimal Strategy (default)
asyncDeltaManager.add_endRequest(sgartSuiteLinksBoxOverride);
} else if(window.addEventListener) {
document.addEventListener("DOMContentLoaded", sgartSuiteLinksBoxOverride,false)
}else{
ExecuteOrDelayUntilScriptLoaded(function () {
sgartSuiteLinksBoxOverride();
}, "core.js");
}
lo script va inserito tramite il seguente PowerShell su tutte le Web Application:
PowerShell
$wa=Get-SPWebApplication http://my.sgart.local
$wa.SuiteBarBrandingElementHtml=@"
<div class="ms-core-brandingText ms-core-suiteLink">
<a class="ms-core-suiteLink-a" href="http://intranet.sgart.local">Sgart Intranet</a>
</div>
<script type="text/javascript">
function sgartSuiteLinksBoxOverride(){
try{
var d=document.getElementById("suiteLinksBox");
var s=d.innerHTML;
d.innerHTML=s.replace(">OneDrive<",">My Drive<");
}catch(e){}
}
if (typeof asyncDeltaManager !== "undefined"){
//nel caso fosse attiva la Download Minimal Strategy (default)
asyncDeltaManager.add_endRequest(sgartSuiteLinksBoxOverride);
} else if(window.addEventListener) {
document.addEventListener("DOMContentLoaded", sgartSuiteLinksBoxOverride,false)
}else{
ExecuteOrDelayUntilScriptLoaded(function () {
sgartSuiteLinksBoxOverride();
}, "core.js");
}
</script>
"@
$wa.Update()
Sembra che non ci sia altro modo per modificare questa label, a meno di non creare un nuovo Delegate Control che spvrascrive quello standard
Ovviamente la modifica della Suite Bar Branding richiede l'accesso amministrativo alla Farm. In alternativa lo script JS può essere incluso in tutte le master page utilizzate.