public void PublishSelectedNodes(object m)
{
var nodeList = DynamoSelection.Instance.Selection
.Where(x => x is Function)
.Cast<Function>()
.Select(x => x.Definition.FunctionId)
.ToList();
if (!nodeList.Any())
{
MessageBox.Show(Resources.MessageSelectAtLeastOneNode,
Resources.SelectionErrorMessageBoxTitle,
MessageBoxButton.OK, MessageBoxImage.Question);
return;
}
var manager = DynamoViewModel.Model.CustomNodeManager;
var defs = new List<Tuple<CustomNodeInfo, CustomNodeDefinition>>();
foreach (var node in nodeList)
{
CustomNodeInfo info;
if (manager.TryGetNodeInfo(node, out info))
{
CustomNodeDefinition def;
if (manager.TryGetFunctionDefinition(node, DynamoModel.IsTestMode, out def))
{
defs.Add(Tuple.Create(info, def));
continue;
}
}
MessageBox.Show(Resources.MessageGettingNodeError,
Resources.SelectionErrorMessageBoxTitle,
MessageBoxButton.OK, MessageBoxImage.Question);
}
var termsOfUseCheck = new TermsOfUseHelper(new TermsOfUseHelperParams
{
PackageManagerClient = Model,
AuthenticationManager = AuthenticationManager,
ResourceProvider = DynamoViewModel.BrandingResourceProvider,
AcceptanceCallback = () => ShowNodePublishInfo(defs)
});
termsOfUseCheck.Execute();
}