Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion src/Spe.Sitecore8/Services/SpeJobOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ public static implicit operator SpeJobOptions(JobOptions options)
{
return new SpeJobOptions(options.JobName, options.Category, options.SiteName, options.Method.Object, options.Method.Method.Name)
{
WriteToLog = options.WriteToLog
WriteToLog = options.WriteToLog,
ClientLanguage = options.ClientLanguage
};
}
}
Expand Down
3 changes: 2 additions & 1 deletion src/Spe.Sitecore92/Services/SpeJobOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ public static implicit operator SpeJobOptions(DefaultJobOptions options)
{
return new SpeJobOptions(options.JobName, options.Category, options.SiteName, options.Method.Object, options.Method.Method.Name)
{
WriteToLog = options.WriteToLog
WriteToLog = options.WriteToLog,
ClientLanguage = options.ClientLanguage
};
}
}
Expand Down
6 changes: 3 additions & 3 deletions src/Spe/Client/Applications/PowerShellRunner.cs
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ protected virtual void UpdateProgress(ClientPipelineArgs args)
else
{
Subtitle.Text = showStatus
? $"<span class=\'status\'>{Texts.PowerShellRunner_UpdateProgress_Status_} {status}</span>"
? $"<span class=\'status\'>{Texts.PowerShellRunner_UpdateProgress_Status_.Translate()} {status}</span>"
: "<span class='status'> </span>";
}
if (args.Parameters["RecordType"] == ProgressRecordType.Completed.ToString())
Expand Down Expand Up @@ -451,15 +451,15 @@ protected virtual void UpdateProgress(ClientPipelineArgs args)
if (secondsRemaining > -1)
sb.AppendFormat(
"<span class='timeRemaining'><span class='label'>" +
Texts.PowerShellRunner_UpdateProgress_Time_remaining_ +
Texts.PowerShellRunner_UpdateProgress_Time_remaining_.Translate() +
"</span> {0:c}</span><br/>",
new TimeSpan(0, 0, 0, secondsRemaining));
}

if (!string.IsNullOrEmpty(args.Parameters["CurrentOperation"]))
{
sb.AppendFormat("<span class='operation'><span class='label'>" +
Texts.PowerShellRunner_UpdateProgress_Operation_ +
Texts.PowerShellRunner_UpdateProgress_Operation_.Translate() +
"</span> {0}</span>",
args.Parameters["CurrentOperation"]);
}
Expand Down
9 changes: 9 additions & 0 deletions src/Spe/Core/Extensions/StringExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -79,5 +79,14 @@ public static bool HasWord(this string value, params string[] words)
{
return words.Any(word => value.IndexOf(word, StringComparison.OrdinalIgnoreCase) > -1);
}

public static string Translate(this string value)
{
if (!string.IsNullOrWhiteSpace(value))
{
return Sitecore.Globalization.Translate.Text(value);
}
return value;
}
}
}
32 changes: 16 additions & 16 deletions src/Spe/Core/Host/ScriptingHostUserInterface.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ private void WriteToLog(string message, LogLevel level)
{
if (!IsOutputLoggingEnabled) return;

switch(level)
switch (level)
{
case LogLevel.Debug:
PowerShellLog.Debug(message);
Expand All @@ -63,7 +63,7 @@ private void WriteToLog(string message, LogLevel level)
case LogLevel.Warning:
PowerShellLog.Warn(message);
break;
}
}
}

/// <summary>
Expand Down Expand Up @@ -112,7 +112,7 @@ public override SecureString ReadLineAsSecureString()
job.MessageQueue.PutMessage(new ShowMultiValuePromptMessage(options, "600", "200",
"Sitecore PowerShell Extensions", " ", string.Empty, string.Empty, string.Empty, false, null, null,
host.SessionKey));
var values = (object[]) job.MessageQueue.GetResult() ?? new object[] {string.Empty};
var values = (object[])job.MessageQueue.GetResult() ?? new object[] { string.Empty };

return ToSecureString(((Hashtable)values[0])["Value"] as string);
}
Expand Down Expand Up @@ -152,7 +152,7 @@ public override void WriteLine(string value)

public override void WriteErrorLine(string value)
{

var splitter = new BufferSplitterCollection(OutputLineType.Error, value, RawUI.BufferSize.Width,
PrivateData.ErrorForegroundColor,
PrivateData.ErrorBackgroundColor, true);
Expand All @@ -176,14 +176,14 @@ public override void WriteProgress(long sourceId, ProgressRecord record)
var message = Message.Parse(this, "ise:updateprogress");
message.Arguments.Add("Activity", record.Activity);
message.Arguments.Add("ActivityId", record.ActivityId.ToString(CultureInfo.InvariantCulture));
message.Arguments.Add("CurrentOperation", record.CurrentOperation);
message.Arguments.Add("StatusDescription", record.StatusDescription);
message.Arguments.Add("CurrentOperation", Sitecore.Globalization.Translate.Text(record.CurrentOperation));
message.Arguments.Add("StatusDescription", Sitecore.Globalization.Translate.Text(record.StatusDescription));
message.Arguments.Add("ParentActivityId", record.ParentActivityId.ToString(CultureInfo.InvariantCulture));
message.Arguments.Add("PercentComplete", record.PercentComplete.ToString(CultureInfo.InvariantCulture));
message.Arguments.Add("RecordType", record.RecordType.ToString());
message.Arguments.Add("SecondsRemaining", record.SecondsRemaining.ToString(CultureInfo.InvariantCulture));
var sheerMessage = new SendMessageMessage(message, false);

var jobManager = TypeResolver.ResolveFromCache<IJobManager>();
var job = jobManager.GetContextJob();
if (job != null)
Expand Down Expand Up @@ -224,7 +224,7 @@ public override Dictionary<string, PSObject> Prompt(string caption, string messa

var secureOptions = new Dictionary<string, bool>();

for (var i=0 ; i < descriptions.Count; i++)
for (var i = 0; i < descriptions.Count; i++)
{
var description = descriptions[i];
var isSecure = description.ParameterTypeName.Contains("SecureString");
Expand All @@ -244,13 +244,13 @@ public override Dictionary<string, PSObject> Prompt(string caption, string messa
string.IsNullOrEmpty(caption) ? "Sitecore PowerShell Extensions" : caption,
string.IsNullOrEmpty(message) ? " " : message, string.Empty, string.Empty, string.Empty, false,
null, null, host.SessionKey));
var values = (object[]) job.MessageQueue.GetResult();
var values = (object[])job.MessageQueue.GetResult();

return values?.Cast<Hashtable>()
.ToDictionary(value => value["Name"].ToString(),
value =>
secureOptions[value["Name"].ToString()]
? PSObject.AsPSObject(ToSecureString((string) value["Value"]))
? PSObject.AsPSObject(ToSecureString((string)value["Value"]))
: PSObject.AsPSObject(value["Value"]));
}

Expand Down Expand Up @@ -281,7 +281,7 @@ public override PSCredential PromptForCredential(string caption, string message,

public override int PromptForChoice(string caption, string message, Collection<ChoiceDescription> choices,
int defaultChoice)
{
{
if (!CheckSessionCanDoInteractiveAction(nameof(PromptForChoice))) return -1;


Expand All @@ -298,14 +298,14 @@ public override int PromptForChoice(string caption, string message, Collection<C
var job = jobManager.GetContextJob();

Context.Site = Factory.GetSite(job.Options.SiteName);
var lineWidth = choices.Count*80 + 140;
var strLineWidth = lineWidth/8;
var lineWidth = choices.Count * 80 + 140;
var strLineWidth = lineWidth / 8;
var lineHeight = 0;
foreach (var line in message.Split('\n'))
{
lineHeight += 1 + line.Length/strLineWidth;
lineHeight += 1 + line.Length / strLineWidth;
}
lineHeight = Math.Max(lineHeight*21 + 130,150);
lineHeight = Math.Max(lineHeight * 21 + 130, 150);
var jobUiManager = TypeResolver.Resolve<IJobMessageManager>();
var dialogResult = jobUiManager.ShowModalDialog(parameters, "ConfirmChoice",
lineWidth.ToString(CultureInfo.InvariantCulture), lineHeight.ToString(CultureInfo.InvariantCulture));
Expand Down Expand Up @@ -339,7 +339,7 @@ public virtual bool CheckSessionCanDoInteractiveAction(string operation, bool th
var message = string.IsNullOrEmpty(operation)
? "Non interactive session cannot perform an interactive operation."
: $"Non interactive session cannot perform an interactive '{operation}' operation.";

PowerShellLog.Debug(message);

if (throwException)
Expand Down