This commit is contained in:
bgamard 2017-11-09 13:36:41 +01:00
parent f57cf46313
commit 36b4fbd303
14 changed files with 32 additions and 32 deletions

View File

@ -26,7 +26,7 @@
<label class="col-sm-2 control-label" for="inputTarget">{{ 'directive.acledit.acl_target' | translate }}</label> <label class="col-sm-2 control-label" for="inputTarget">{{ 'directive.acledit.acl_target' | translate }}</label>
<div class="col-sm-4"> <div class="col-sm-4">
<input required ng-maxlength="50" class="form-control" type="text" id="inputTarget" <input required ng-maxlength="50" class="form-control" type="text" id="inputTarget"
placeholder="{{ 'directive.acledit.search_user_group' | translate }}" name="target" ng-model="acl.target" autocomplete="off" ng-attr-placeholder="{{ 'directive.acledit.search_user_group' | translate }}" name="target" ng-model="acl.target" autocomplete="off"
typeahead="target as target.name for target in getTargetAclTypeahead($viewValue) | filter: $viewValue" typeahead="target as target.name for target in getTargetAclTypeahead($viewValue) | filter: $viewValue"
typeahead-template-url="partial/docs/directive.typeahead.acl.html" typeahead-template-url="partial/docs/directive.typeahead.acl.html"
typeahead-wait-ms="200" /> typeahead-wait-ms="200" />

View File

@ -6,7 +6,7 @@
</span> </span>
</li> </li>
</ul> </ul>
<input class="form-control" type="text" id="{{ ref }}" placeholder="{{ 'directive.selectrelation.typeahead' | translate }}" ng-model="input" ng-disabled="ngDisabled" <input class="form-control" type="text" id="{{ ref }}" ng-attr-placeholder="{{ 'directive.selectrelation.typeahead' | translate }}" ng-model="input" ng-disabled="ngDisabled"
autocomplete="off" typeahead="document.title for document in getDocumentTypeahead($viewValue)" autocomplete="off" typeahead="document.title for document in getDocumentTypeahead($viewValue)"
typeahead-wait-ms="200" typeahead-on-select="addRelation($item)" /> typeahead-wait-ms="200" typeahead-on-select="addRelation($item)" />
</div> </div>

View File

@ -6,6 +6,6 @@
</span> </span>
</li> </li>
</ul> </ul>
<input class="form-control" type="text" id="{{ ref }}" placeholder="{{ 'directive.selecttag.typeahead' | translate }}" ng-model="input" ng-disabled="ngDisabled" <input class="form-control" type="text" id="{{ ref }}" ng-attr-placeholder="{{ 'directive.selecttag.typeahead' | translate }}" ng-model="input" ng-disabled="ngDisabled"
autocomplete="off" typeahead="tag.name for tag in allTags | filter: $viewValue" typeahead-on-select="addTag()" /> autocomplete="off" typeahead="tag.name for tag in allTags | filter: $viewValue" typeahead-on-select="addTag()" />
</div> </div>

View File

@ -25,7 +25,7 @@
<label class="col-sm-2 control-label" for="inputTitle">{{ 'document.title' | translate }}</label> <label class="col-sm-2 control-label" for="inputTitle">{{ 'document.title' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input required ng-maxlength="100" class="form-control" type="text" id="inputTitle" <input required ng-maxlength="100" class="form-control" type="text" id="inputTitle"
placeholder="{{ 'document.edit.title_placeholder' | translate }}" name="title" ng-model="document.title" autocomplete="off" ng-attr-placeholder="{{ 'document.edit.title_placeholder' | translate }}" name="title" ng-model="document.title" autocomplete="off"
typeahead="document for document in getTitleTypeahead($viewValue)" typeahead="document for document in getTitleTypeahead($viewValue)"
typeahead-wait-ms="200" ng-disabled="fileIsUploading" /> typeahead-wait-ms="200" ng-disabled="fileIsUploading" />
</div> </div>
@ -33,7 +33,7 @@
<div class="form-group" ng-class="{ 'has-error': !documentForm.description.$valid }"> <div class="form-group" ng-class="{ 'has-error': !documentForm.description.$valid }">
<label class="col-sm-2 control-label" for="inputDescription">{{ 'document.description' | translate }}</label> <label class="col-sm-2 control-label" for="inputDescription">{{ 'document.description' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<textarea ng-maxlength="4000" class="form-control" rows="5" id="inputDescription" placeholder="{{ 'document.edit.description_placeholder' | translate }}" <textarea ng-maxlength="4000" class="form-control" rows="5" id="inputDescription" ng-attr-placeholder="{{ 'document.edit.description_placeholder' | translate }}"
name="description" ng-model="document.description" ng-disabled="fileIsUploading"></textarea> name="description" ng-model="document.description" ng-disabled="fileIsUploading"></textarea>
</div> </div>
</div> </div>
@ -75,7 +75,7 @@
<div class="col-sm-4" ng-if="orphanFiles.length > 0"> <div class="col-sm-4" ng-if="orphanFiles.length > 0">
+ {{ orphanFiles.length }} file{{ orphanFiles.length > 1 ? 's' : '' }} + {{ orphanFiles.length }} file{{ orphanFiles.length > 1 ? 's' : '' }}
{{ 'document.edit.orphan_files' | translate: '{ count: orphanFiles.length }' }} {{ 'document.edit.orphan_files' | translate: '{ count: orphanFiles.length }' }}
</div> </div>{{newFiles}}
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label" for="inputTags">{{ 'document.tags' | translate }}</label> <label class="col-sm-2 control-label" for="inputTags">{{ 'document.tags' | translate }}</label>
@ -95,35 +95,35 @@
<label class="col-sm-2 control-label" for="inputSubject">{{ 'document.subject' | translate }}</label> <label class="col-sm-2 control-label" for="inputSubject">{{ 'document.subject' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input ng-maxlength="500" class="form-control" type="text" id="inputSubject" <input ng-maxlength="500" class="form-control" type="text" id="inputSubject"
placeholder="{{ 'document.edit.subject_placeholder' | translate }}" name="subject" ng-model="document.subject" ng-disabled="fileIsUploading" /> ng-attr-placeholder="{{ 'document.edit.subject_placeholder' | translate }}" name="subject" ng-model="document.subject" ng-disabled="fileIsUploading" />
</div> </div>
</div> </div>
<div class="form-group" ng-class="{ 'has-error': !documentForm.identifier.$valid }"> <div class="form-group" ng-class="{ 'has-error': !documentForm.identifier.$valid }">
<label class="col-sm-2 control-label" for="inputIdentifier">{{ 'document.identifier' | translate }}</label> <label class="col-sm-2 control-label" for="inputIdentifier">{{ 'document.identifier' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input ng-maxlength="500" class="form-control" type="text" id="inputIdentifier" <input ng-maxlength="500" class="form-control" type="text" id="inputIdentifier"
placeholder="{{ 'document.edit.identifier_placeholder' | translate }}" name="identifier" ng-model="document.identifier" ng-disabled="fileIsUploading" /> ng-attr-placeholder="{{ 'document.edit.identifier_placeholder' | translate }}" name="identifier" ng-model="document.identifier" ng-disabled="fileIsUploading" />
</div> </div>
</div> </div>
<div class="form-group" ng-class="{ 'has-error': !documentForm.publisher.$valid }"> <div class="form-group" ng-class="{ 'has-error': !documentForm.publisher.$valid }">
<label class="col-sm-2 control-label" for="inputPublisher">{{ 'document.publisher' | translate }}</label> <label class="col-sm-2 control-label" for="inputPublisher">{{ 'document.publisher' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input ng-maxlength="500" class="form-control" type="text" id="inputPublisher" <input ng-maxlength="500" class="form-control" type="text" id="inputPublisher"
placeholder="{{ 'document.edit.publisher_placeholder' | translate }}" name="publisher" ng-model="document.publisher" ng-disabled="fileIsUploading" /> ng-attr-placeholder="{{ 'document.edit.publisher_placeholder' | translate }}" name="publisher" ng-model="document.publisher" ng-disabled="fileIsUploading" />
</div> </div>
</div> </div>
<div class="form-group" ng-class="{ 'has-error': !documentForm.format.$valid }"> <div class="form-group" ng-class="{ 'has-error': !documentForm.format.$valid }">
<label class="col-sm-2 control-label" for="inputFormat">{{ 'document.format' | translate }}</label> <label class="col-sm-2 control-label" for="inputFormat">{{ 'document.format' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input ng-maxlength="500" class="form-control" type="text" id="inputFormat" <input ng-maxlength="500" class="form-control" type="text" id="inputFormat"
placeholder="{{ 'document.edit.format_placeholder' | translate }}" name="format" ng-model="document.format" ng-disabled="fileIsUploading" /> ng-attr-placeholder="{{ 'document.edit.format_placeholder' | translate }}" name="format" ng-model="document.format" ng-disabled="fileIsUploading" />
</div> </div>
</div> </div>
<div class="form-group" ng-class="{ 'has-error': !documentForm.source.$valid }"> <div class="form-group" ng-class="{ 'has-error': !documentForm.source.$valid }">
<label class="col-sm-2 control-label" for="inputSource">{{ 'document.source' | translate }}</label> <label class="col-sm-2 control-label" for="inputSource">{{ 'document.source' | translate }}</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input ng-maxlength="500" class="form-control" type="text" id="inputSource" <input ng-maxlength="500" class="form-control" type="text" id="inputSource"
placeholder="{{ 'document.edit.source_placeholder' | translate }}" name="source" ng-model="document.source" ng-disabled="fileIsUploading" /> ng-attr-placeholder="{{ 'document.edit.source_placeholder' | translate }}" name="source" ng-model="document.source" ng-disabled="fileIsUploading" />
</div> </div>
</div> </div>

View File

@ -29,7 +29,7 @@
lang:fra<br/> lang:fra<br/>
by:user1"></span> by:user1"></span>
</span> </span>
<input type="search" class="form-control" placeholder="{{ 'document.search' | translate }}" ng-model="search" /> <input type="search" class="form-control" ng-attr-placeholder="{{ 'document.search' | translate }}" ng-model="search" />
<span class="input-group-addon"> <span class="input-group-addon">
<span class="glyphicon glyphicon-search" ng-show="search.length == 0"></span> <span class="glyphicon glyphicon-search" ng-show="search.length == 0"></span>
<span class="glyphicon glyphicon-remove" ng-show="search.length > 0" ng-click="search = ''"></span> <span class="glyphicon glyphicon-remove" ng-show="search.length > 0" ng-click="search = ''"></span>

View File

@ -117,7 +117,7 @@
<form ng-submit="addComment()"> <form ng-submit="addComment()">
<div class="form-group"> <div class="form-group">
<label class="sr-only" for="commentInput">{{ 'document.view.add_comment' | translate }}</label> <label class="sr-only" for="commentInput">{{ 'document.view.add_comment' | translate }}</label>
<input type="text" class="form-control" id="commentInput" ng-model="comment" placeholder="{{ 'document.view.add_comment' | translate }}"> <input type="text" class="form-control" id="commentInput" ng-model="comment" ng-attr-placeholder="{{ 'document.view.add_comment' | translate }}">
</div> </div>
</form> </form>
</div> </div>

View File

@ -17,12 +17,12 @@
<form> <form>
<div class="form-group"> <div class="form-group">
<label class="sr-only" for="inputUsername">{{ 'login.username' | translate }}</label> <label class="sr-only" for="inputUsername">{{ 'login.username' | translate }}</label>
<input class="form-control" type="text" id="inputUsername" placeholder="{{ 'login.username' | translate }}" ng-model="user.username" /> <input class="form-control" type="text" id="inputUsername" ng-attr-placeholder="{{ 'login.username' | translate }}" ng-model="user.username" />
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="sr-only" for="inputPassword">{{ 'login.password' | translate }}</label> <label class="sr-only" for="inputPassword">{{ 'login.password' | translate }}</label>
<input class="form-control" type="password" id="inputPassword" placeholder="{{ 'login.password' | translate }}" ng-model="user.password" /> <input class="form-control" type="password" id="inputPassword" ng-attr-placeholder="{{ 'login.password' | translate }}" ng-model="user.password" />
</div> </div>
<span class="help-block" ng-if="codeRequired"> <span class="help-block" ng-if="codeRequired">
@ -31,7 +31,7 @@
</span> </span>
<div class="form-group" ng-if="codeRequired"> <div class="form-group" ng-if="codeRequired">
<label class="sr-only" for="inputCode">{{ 'login.validation_code' | translate }}</label> <label class="sr-only" for="inputCode">{{ 'login.validation_code' | translate }}</label>
<input class="form-control" type="text" id="inputCode" placeholder="{{ 'login.validation_code' | translate }}" ng-model="user.code" /> <input class="form-control" type="text" id="inputCode" ng-attr-placeholder="{{ 'login.validation_code' | translate }}" ng-model="user.code" />
</div> </div>
<div class="checkbox"> <div class="checkbox">

View File

@ -4,7 +4,7 @@
<label class="col-sm-2 control-label" for="inputPassword">{{ 'settings.account.password' | translate }}</label> <label class="col-sm-2 control-label" for="inputPassword">{{ 'settings.account.password' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="password" type="password" id="inputPassword" required class="form-control" <input name="password" type="password" id="inputPassword" required class="form-control"
ng-minlength="8" ng-maxlength="50" placeholder="{{ 'settings.account.password' | translate }}" ng-model="user.password" /> ng-minlength="8" ng-maxlength="50" ng-attr-placeholder="{{ 'settings.account.password' | translate }}" ng-model="user.password" />
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
<span class="help-block" ng-show="editUserForm.password.$error.required && editUserForm.$dirty">{{ 'validation.required' | translate }}</span> <span class="help-block" ng-show="editUserForm.password.$error.required && editUserForm.$dirty">{{ 'validation.required' | translate }}</span>
@ -18,7 +18,7 @@
<div class="col-sm-7"> <div class="col-sm-7">
<input name="passwordconfirm" type="password" id="inputPasswordConfirm" required class="form-control" <input name="passwordconfirm" type="password" id="inputPasswordConfirm" required class="form-control"
ui-validate="'$value == user.password'" ui-validate-watch="'user.password'" ui-validate="'$value == user.password'" ui-validate-watch="'user.password'"
placeholder="{{ 'settings.account.password_confirm' | translate }}" ng-model="user.passwordconfirm" /> ng-attr-placeholder="{{ 'settings.account.password_confirm' | translate }}" ng-model="user.passwordconfirm" />
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
<span class="help-block" ng-show="editUserForm.passwordconfirm.$error.validator && editUserForm.$dirty">{{ 'validation.password_confirm' | translate }}</span> <span class="help-block" ng-show="editUserForm.passwordconfirm.$error.validator && editUserForm.$dirty">{{ 'validation.password_confirm' | translate }}</span>

View File

@ -32,7 +32,7 @@
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label" for="inputCss">{{ 'settings.config.custom_css' | translate }}</label> <label class="col-sm-2 control-label" for="inputCss">{{ 'settings.config.custom_css' | translate }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<textarea class="form-control" rows="6" placeholder="{{ 'settings.config.custom_css_placeholder' | translate }}" <textarea class="form-control" rows="6" ng-attr-placeholder="{{ 'settings.config.custom_css_placeholder' | translate }}"
id="inputCss" ng-model="theme.css" ng-blur="update()"></textarea> id="inputCss" ng-model="theme.css" ng-blur="update()"></textarea>
</div> </div>
</div> </div>

View File

@ -9,7 +9,7 @@
<label class="col-sm-2 control-label" for="inputName">{{ 'settings.group.edit.name' | translate }}</label> <label class="col-sm-2 control-label" for="inputName">{{ 'settings.group.edit.name' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="name" type="text" id="inputName" required class="form-control" <input name="name" type="text" id="inputName" required class="form-control"
ng-minlength="3" ng-maxlength="50" placeholder="{{ 'settings.group.edit.name' | translate }}" ng-model="group.name"/> ng-minlength="3" ng-maxlength="50" ng-attr-placeholder="{{ 'settings.group.edit.name' | translate }}" ng-model="group.name"/>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
@ -24,7 +24,7 @@
<div class="col-sm-7"> <div class="col-sm-7">
<input name="parent" type="text" id="inputParent" class="form-control" autocomplete="off" <input name="parent" type="text" id="inputParent" class="form-control" autocomplete="off"
placeholder="{{ 'settings.group.edit.search_group' | translate }}" ng-model="group.parent" ng-attr-placeholder="{{ 'settings.group.edit.search_group' | translate }}" ng-model="group.parent"
typeahead="group for group in getGroupTypeahead($viewValue)" typeahead="group for group in getGroupTypeahead($viewValue)"
typeahead-wait-ms="200" typeahead-editable="false" /> typeahead-wait-ms="200" typeahead-editable="false" />
</div> </div>
@ -49,7 +49,7 @@
<label class="col-sm-2 control-label" for="inputMember">{{ 'settings.group.edit.new_member' | translate }}</label> <label class="col-sm-2 control-label" for="inputMember">{{ 'settings.group.edit.new_member' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="member" type="text" id="inputMember" class="form-control" ng-model="member" <input name="member" type="text" id="inputMember" class="form-control" ng-model="member"
placeholder="{{ 'settings.group.edit.search_user' | translate }}" ng-attr-placeholder="{{ 'settings.group.edit.search_user' | translate }}"
typeahead="user for user in getUserTypeahead($viewValue)" typeahead-on-select="addMember($item)" typeahead="user for user in getUserTypeahead($viewValue)" typeahead-on-select="addMember($item)"
typeahead-wait-ms="200" typeahead-editable="false" autocomplete="off" /> typeahead-wait-ms="200" typeahead-editable="false" autocomplete="off" />
</div> </div>

View File

@ -9,7 +9,7 @@
<label class="col-sm-2 control-label" for="inputUsername">{{ 'settings.user.edit.username' | translate }}</label> <label class="col-sm-2 control-label" for="inputUsername">{{ 'settings.user.edit.username' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="username" type="text" id="inputUsername" required ng-disabled="isEdit()" class="form-control" <input name="username" type="text" id="inputUsername" required ng-disabled="isEdit()" class="form-control"
ng-minlength="3" ng-maxlength="50" placeholder="{{ 'settings.user.edit.username' | translate }}" ng-model="user.username"/> ng-minlength="3" ng-maxlength="50" ng-attr-placeholder="{{ 'settings.user.edit.username' | translate }}" ng-model="user.username"/>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
@ -23,7 +23,7 @@
<label class="col-sm-2 control-label" for="inputEmail">{{ 'settings.user.edit.email' | translate }}</label> <label class="col-sm-2 control-label" for="inputEmail">{{ 'settings.user.edit.email' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="email" type="email" id="inputEmail" required class="form-control" <input name="email" type="email" id="inputEmail" required class="form-control"
ng-minlength="1" ng-maxlength="100" placeholder="{{ 'settings.user.edit.email' | translate }}" ng-model="user.email"/> ng-minlength="1" ng-maxlength="100" ng-attr-placeholder="{{ 'settings.user.edit.email' | translate }}" ng-model="user.email"/>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
@ -49,7 +49,7 @@
<div class="col-sm-7"> <div class="col-sm-7">
<div class="input-group"> <div class="input-group">
<input name="storage_quota" type="number" id="inputQuota" required class="form-control" <input name="storage_quota" type="number" id="inputQuota" required class="form-control"
ng-pattern="/[0-9]*/" placeholder="{{ 'settings.user.edit.storage_quota_placeholder' | translate }}" ng-model="user.storage_quota"/> ng-pattern="/[0-9]*/" ng-attr-placeholder="{{ 'settings.user.edit.storage_quota_placeholder' | translate }}" ng-model="user.storage_quota"/>
<div class="input-group-addon">{{ 'filter.filesize.mb' | translate }}</div> <div class="input-group-addon">{{ 'filter.filesize.mb' | translate }}</div>
</div> </div>
</div> </div>
@ -64,7 +64,7 @@
<label class="col-sm-2 control-label" for="inputPassword">{{ 'settings.user.edit.password' | translate }}</label> <label class="col-sm-2 control-label" for="inputPassword">{{ 'settings.user.edit.password' | translate }}</label>
<div class="col-sm-7"> <div class="col-sm-7">
<input name="password" type="password" id="inputPassword" ng-required="!isEdit()" class="form-control" <input name="password" type="password" id="inputPassword" ng-required="!isEdit()" class="form-control"
ng-minlength="8" ng-maxlength="50" placeholder="{{ 'settings.user.edit.password' | translate }}" ng-model="user.password"/> ng-minlength="8" ng-maxlength="50" ng-attr-placeholder="{{ 'settings.user.edit.password' | translate }}" ng-model="user.password"/>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
@ -80,7 +80,7 @@
<div class="col-sm-7"> <div class="col-sm-7">
<input name="passwordconfirm" type="password" id="inputPasswordConfirm" ng-required="!isEdit()" class="form-control" <input name="passwordconfirm" type="password" id="inputPasswordConfirm" ng-required="!isEdit()" class="form-control"
ui-validate="'$value == user.password'" ui-validate-watch="'user.password'" ui-validate="'$value == user.password'" ui-validate-watch="'user.password'"
placeholder="{{ 'settings.user.edit.password_confirm' | translate }}" ng-model="user.passwordconfirm"/> ng-attr-placeholder="{{ 'settings.user.edit.password_confirm' | translate }}" ng-model="user.passwordconfirm"/>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">

View File

@ -23,7 +23,7 @@
<tbody> <tbody>
<tr class="info"> <tr class="info">
<td> <td>
<input type="text" placeholder="{{ 'settings.vocabulary.new_entry' | translate }}" class="form-control" ng-model="entry.value" maxlength="500" /> <input type="text" ng-attr-placeholder="{{ 'settings.vocabulary.new_entry' | translate }}" class="form-control" ng-model="entry.value" maxlength="500" />
</td> </td>
<td> <td>
<input type="number" class="form-control" ng-model="entry.order" /> <input type="number" class="form-control" ng-model="entry.order" />

View File

@ -4,7 +4,7 @@
<form name="tagForm" novalidate> <form name="tagForm" novalidate>
<p class="input-group" ng-class="{ 'has-error': !tagForm.name.$valid && tagForm.$dirty }"> <p class="input-group" ng-class="{ 'has-error': !tagForm.name.$valid && tagForm.$dirty }">
<span colorpicker class="input-group-addon btn btn-default" data-color="#3a87ad" ng-model="tag.color" ng-style="{ 'background': tag.color }">&nbsp;</span> <span colorpicker class="input-group-addon btn btn-default" data-color="#3a87ad" ng-model="tag.color" ng-style="{ 'background': tag.color }">&nbsp;</span>
<input type="text" name="name" placeholder="{{ 'tag.new_tag' | translate }}" class="form-control" <input type="text" name="name" ng-attr-placeholder="{{ 'tag.new_tag' | translate }}" class="form-control"
ng-maxlength="36" required ng-model="tag.name" ui-validate="{ space: '!$value || $value.indexOf(\' \') == -1' }"> ng-maxlength="36" required ng-model="tag.name" ui-validate="{ space: '!$value || $value.indexOf(\' \') == -1' }">
<span class="input-group-addon btn btn-primary" ng-disabled="!tagForm.$valid" ng-click="addTag()">{{ 'add' | translate }}</span> <span class="input-group-addon btn btn-primary" ng-disabled="!tagForm.$valid" ng-click="addTag()">{{ 'add' | translate }}</span>
</p> </p>
@ -13,7 +13,7 @@
<p class="input-group"> <p class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span> <span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span>
<input type="search" class="form-control" placeholder="{{ 'tag.search' | translate }}" ng-model="search.name"> <input type="search" class="form-control" ng-attr-placeholder="{{ 'tag.search' | translate }}" ng-model="search.name">
</p> </p>
<table class="row table table-hover table-tags"> <table class="row table table-hover table-tags">

View File

@ -3,7 +3,7 @@
<div class="well"> <div class="well">
<p class="input-group"> <p class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span> <span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span>
<input type="search" class="form-control" placeholder="{{ 'usergroup.search_groups' | translate }}" ng-model="searchGroup"> <input type="search" class="form-control" ng-attr-placeholder="{{ 'usergroup.search_groups' | translate }}" ng-model="searchGroup">
</p> </p>
<table class="row table table-hover"> <table class="row table table-hover">
@ -21,7 +21,7 @@
<div class="well"> <div class="well">
<p class="input-group"> <p class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span> <span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span>
<input type="search" class="form-control" placeholder="{{ 'usergroup.search_users' | translate }}" ng-model="searchUser"> <input type="search" class="form-control" ng-attr-placeholder="{{ 'usergroup.search_users' | translate }}" ng-model="searchUser">
</p> </p>
<table class="row table table-hover"> <table class="row table table-hover">