private void UpdateEditabilityMetadata(BookStorage storage)
{
//Here's the logic: If we're in a shell-making library, then it's safe to say that a newly-
//created book is going to be a shell. Any derivatives will then act as shells. But it won't
//prevent us from editing it while in a shell-making collections, since we don't honor this
//tag in shell-making collections.
//The problem is, if you make a book in some vernacular library, then share it so that others
//can use it as a shell, then (as of version 2) Bloom doesn't have a way of realizing that it's
//being used as a shell. So everything is editable (not a big deal) but you're also locked out
// of editing the acknowledgements for translated version.
//It seems to me at the moment (May 2014) that the time to mark something as locked down should
//be when the they create a book based on a source-with-content book. So the current approach
//below, of pre-locking it, would go away.
if(_isSourceCollection)
{
storage.Dom.UpdateMetaElement("lockedDownAsShell", "true");
}
#if maybe //hard to pin down when a story primer, dictionary, etc. also becomes a new "source for new shells"
//things like picture dictionaries could be used repeatedly
//but things from Basic Book are normally not.
var x = GetMetaValue(storage.Dom, "DerivativesAreSuitableForMakingShells", "false");
#else
var x = false;
#endif
storage.MetaData.IsSuitableForMakingShells = x;
}