<h1>{lang}wcf.acp.cronjob.list{/lang}</h1>
<h2>{lang}wcf.acp.cronjob.subtitle{/lang}</h2>
</hgroup>
-
- <script type="text/javascript">
- //<![CDATA[
- $(function() {
- new WCF.Action.Delete('wcf\\data\\cronjob\\CronjobAction', $('.jsCronjobRow'));
- new WCF.Action.Toggle('wcf\\data\\cronjob\\CronjobAction', $('.jsCronjobRow'));
- new WCF.Action.SimpleProxy({
- action: 'execute',
- className: 'wcf\\data\\cronjob\\CronjobAction',
- elements: $('.jsCronjobRow .jsExecuteButton')
- }, {
- success: function(data, statusText, jqXHR) {
- $('.jsCronjobRow').each(function(index, row) {
- $button = $(row).find('.jsExecuteButton');
-
- if (WCF.inArray($($button).data('objectID'), data.objectIDs)) {
- // insert feedback here
- $(row).find('td.columnNextExec').html(data.returnValues[$($button).data('objectID')].formatted);
- $(row).wcfHighlight();
- }
- });
- }
- });
- });
- //]]>
- </script>
</header>
+<script type="text/javascript">
+ //<![CDATA[
+ $(function() {
+ new WCF.Action.Delete('wcf\\data\\cronjob\\CronjobAction', $('.jsCronjobRow'));
+ new WCF.Action.Toggle('wcf\\data\\cronjob\\CronjobAction', $('.jsCronjobRow'));
+ new WCF.Action.SimpleProxy({
+ action: 'execute',
+ className: 'wcf\\data\\cronjob\\CronjobAction',
+ elements: $('.jsCronjobRow .jsExecuteButton')
+ }, {
+ success: function(data, statusText, jqXHR) {
+ $('.jsCronjobRow').each(function(index, row) {
+ $button = $(row).find('.jsExecuteButton');
+
+ if (WCF.inArray($($button).data('objectID'), data.objectIDs)) {
+ // insert feedback here
+ $(row).find('td.columnNextExec').html(data.returnValues[$($button).data('objectID')].formatted);
+ $(row).wcfHighlight();
+ }
+ });
+ }
+ });
+ });
+ //]]>
+</script>
+
<div class="contentNavigation">
{pages print=true assign=pagesLinks controller="CronjobList" link="pageNo=%d&sortField=$sortField&sortOrder=$sortOrder"}
{/content}
</tbody>
</table>
-
</div>
{hascontentelse}
- <p class="warning">{lang}wcf.acp.cronjob.noneAvailable{/lang}</p>
+ <p class="info">{lang}wcf.acp.cronjob.noneAvailable{/lang}</p>
{/hascontent}
<div class="contentNavigation">
{else}
{assign var=error value=''}
{/if}
- <dl class="{$option->optionName}Input">
+ <dl class="{$option->optionName}Input{if $error} formError{/if}">
<dt{if $optionData[cssClassName]} class="{$optionData[cssClassName]}"{/if}><label for="{$option->optionName}">{lang}{@$langPrefix}{$option->optionName}{/lang}</label></dt>
<dd>{@$optionData[html]}
{if $error}
{if $error == 'empty'}
{lang}wcf.global.form.error.empty{/lang}
{else}
- {lang}wcf.user.option.error.{$error}{/lang}
+ {lang}{@$langPrefix}error.{$error}{/lang}
{/if}
</small>
{/if}
$option->setUser($this->user);
}
- if ($this->inRegistration && !$option->askDuringRegistration) {
+ if ($this->inRegistration && !$option->askDuringRegistration && !$option->required) {
return false;
}
* @see wcf\system\template\IModifierTemplatePlugin::execute()
*/
public function execute($tagArgs, TemplateEngine $tplObj) {
- // escape backslash
- $tagArgs[0] = StringUtil::replace("\\", "\\\\", $tagArgs[0]);
-
- // escape singe quote
- $tagArgs[0] = StringUtil::replace("'", "\'", $tagArgs[0]);
-
- // escape new lines
- $tagArgs[0] = StringUtil::replace("\n", '\n', $tagArgs[0]);
-
- // escape slashes
- $tagArgs[0] = StringUtil::replace("/", '\/', $tagArgs[0]);
-
- return $tagArgs[0];
+ return StringUtil::encodeJS($tagArgs[0]);
}
}
return @htmlspecialchars($string, ENT_COMPAT, 'UTF-8');
}
+ /**
+ * Converts javascript special characters.
+ *
+ * @param string $string
+ * @return string $string
+ */
+ public static function encodeJS($string) {
+ if (is_object($string)) $string = $string->__toString();
+
+ // escape backslash
+ $string = StringUtil::replace("\\", "\\\\", $string);
+
+ // escape singe quote
+ $string = StringUtil::replace("'", "\'", $string);
+
+ // escape new lines
+ $string = StringUtil::replace("\n", '\n', $string);
+
+ // escape slashes
+ $string = StringUtil::replace("/", '\/', $string);
+
+ return $string;
+ }
+
/**
* Decodes html entities.
*
height: 24px;
left: 13px;
position: absolute;
- top: 6px;
+ top: 5px;
width: 24px;
}
}
/* disabled state */
- &.disabled > dt {
- color: @wcfDimmedColor;
+ &.disabled {
+ > dt, > dd > label {
+ color: @wcfDimmedColor;
+ }
}
}
}
select[multiple]:focus {
background-color: @wcfInputHoverBackgroundColor;
border-color: @wcfInputHoverBorderColor;
- outline: none;
+ outline: 0;
.boxShadowNative(~"0 0 5px" fade(@wcfInputHoverBorderColor, 50%) ~", inset 0 1px 5px rgba(0, 0, 0, .1)");
}
.boxShadowNative(~"0 0 5px" fade(@wcfErrorBackgroundColor, 50%) ~", inset 0 1px 5px rgba(0, 0, 0, .1)");
}
+/* success state */
+.formSuccess input[type='text'],
+.formSuccess input[type='search'],
+.formSuccess input[type='email'],
+.formSuccess input[type='url'],
+.formSuccess input[type='password'],
+.formSuccess textarea {
+ border-color: @wcfSuccessBackgroundColor;
+
+ .boxShadowNative(~"0 0 5px" fade(@wcfSuccessBackgroundColor, 50%) ~", inset 0 1px 5px rgba(0, 0, 0, .1)");
+}
+
/* width */
textarea {
width: 99%;
}
:focus {
- outline: 0;
+ /*outline: 0;*/
}
#pageHeader {