mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2025-01-18 07:52:23 +01:00
(bug) social icons & avatar not shown
This commit is contained in:
parent
9b22286327
commit
c5ef505008
@ -9,7 +9,7 @@
|
||||
<div class="widget panel b-a m m-t-lg">
|
||||
<div class="panel-heading b-b small text-center">
|
||||
<span class="avatar ">
|
||||
<fab-user-avatar ng-model="user.profile.user_avatar" avatar-class="thumb-50">test</fab-user-avatar>
|
||||
<fab-user-avatar ng-model="user.profile_attributes.user_avatar_attributes" avatar-class="thumb-50">test</fab-user-avatar>
|
||||
</span>
|
||||
<div class="font-sbold m-t-sm">{{user.name}}</div>
|
||||
<div>{{user.email}}</div>
|
||||
|
@ -1,26 +1,26 @@
|
||||
<uib-alert ng-repeat="alert in alerts" type="{{alert.type}}" close="closeAlert($index)">{{alert.msg}}</uib-alert>
|
||||
|
||||
<input name="_method" type="hidden" ng-value="method">
|
||||
<input name="user[profile_attributes][id]" type="hidden" ng-value="user.profile.id">
|
||||
<input name="user[profile_attributes][id]" type="hidden" ng-value="user.profile_attributes.id">
|
||||
<input name="user[invoicing_profile_attributes][id]" type="hidden" ng-value="user.invoicing_profile.id">
|
||||
<input name="user[statistic_profile_attributes][id]" type="hidden" ng-value="user.statistic_profile.id">
|
||||
|
||||
<div class="row m-t">
|
||||
<div class="col-sm-3 col-sm-offset-1">
|
||||
<div class="form-group m-t-lg">
|
||||
<div class="fileinput text-center" data-provides="fileinput" ng-class="fileinputClass(user.profile.user_avatar.attachment_url)">
|
||||
<div class="fileinput text-center" data-provides="fileinput" ng-class="fileinputClass(user.profile_attributes.user_avatar_attributes.attachment_url)">
|
||||
<div class="fileinput-new thumbnail rounded thumb-128-wrapper" style="width: 140px; height: 140px;">
|
||||
<img src="../../images/no_avatar.png" class="img-circle">
|
||||
</div>
|
||||
<div class="fileinput-preview fileinput-exists thumbnail rounded thumb-128-wrapper" data-trigger="fileinput" style="width: 140px; height: 140px; line-height: 140px;">
|
||||
<img ng-src="{{ user.profile.user_avatar.attachment_url }}" />
|
||||
<img ng-src="{{ user.profile_attributes.user_avatar_attributes.attachment_url }}" />
|
||||
</div>
|
||||
<div class="m-t-sm">
|
||||
<input type="hidden" name="user[profile_attributes][user_avatar_attributes][id]" ng-value="user.profile.user_avatar.id">
|
||||
<input type="hidden" name="user[profile_attributes][user_avatar_attributes][_destroy]" ng-value="true" ng-if="user.profile.user_avatar._destory">
|
||||
<input type="hidden" name="user[profile_attributes][user_avatar_attributes][id]" ng-value="user.profile_attributes.user_avatar_attributes.id">
|
||||
<input type="hidden" name="user[profile_attributes][user_avatar_attributes][_destroy]" ng-value="true" ng-if="user.profile_attributes.user_avatar._destory">
|
||||
<span class="btn btn-default btn-file"
|
||||
ng-click="user.profile.user_avatar._destory = false"
|
||||
ng-hide="preventField['profile.avatar'] && user.profile.user_avatar.attachment_url && !userForm['user[profile_attributes][user_avatar_attributes]'].$dirty">
|
||||
ng-click="user.profile_attributes.user_avatar_attributes._destory = false"
|
||||
ng-hide="preventField['profile.avatar'] && user.profile_attributes.user_avatar_attributes.attachment_url && !userForm['user[profile_attributes][user_avatar_attributes]'].$dirty">
|
||||
<span class="fileinput-new" translate>{{ 'app.shared.user.add_an_avatar' }}</span>
|
||||
<span class="fileinput-exists" translate>{{ 'app.shared.buttons.change' }}</span>
|
||||
<input type="file" name="user[profile_attributes][user_avatar_attributes][attachment]" accept="image/jpeg,image/gif,image/png">
|
||||
@ -28,8 +28,8 @@
|
||||
|
||||
<button class="btn btn-danger fileinput-exists"
|
||||
data-dismiss="fileinput"
|
||||
ng-click="user.profile.user_avatar._destory = true"
|
||||
ng-hide="preventField['profile.avatar'] && user.profile.user_avatar.attachment_url && !userForm['user[profile_attributes][user_avatar_attributes]'].$dirty">
|
||||
ng-click="user.profile_attributes.user_avatar_attributes._destory = true"
|
||||
ng-hide="preventField['profile.avatar'] && user.profile_attributes.user_avatar.attachment_url && !userForm['user[profile_attributes][user_avatar_attributes]'].$dirty">
|
||||
<i class="fa fa-trash-o"></i>
|
||||
</button>
|
||||
</div>
|
||||
@ -43,18 +43,18 @@
|
||||
<label class="checkbox-inline btn btn-default">
|
||||
<input type="radio"
|
||||
name="user[statistic_profile_attributes][gender]"
|
||||
ng-model="user.statistic_profile.gender"
|
||||
ng-model="user.statistic_profile_attributes.gender"
|
||||
value="true"
|
||||
ng-disabled="preventField['profile.gender'] && user.statistic_profile.gender && !userForm['user[statistic_profile_attributes][gender]'].$dirty"
|
||||
ng-disabled="preventField['profile.gender'] && user.statistic_profile_attributes.gender && !userForm['user[statistic_profile_attributes][gender]'].$dirty"
|
||||
required/>
|
||||
<i class="fa fa-male m-l-sm"></i> {{ 'app.shared.user.man' | translate }}
|
||||
</label>
|
||||
<label class="checkbox-inline btn btn-default">
|
||||
<input type="radio"
|
||||
name="user[statistic_profile_attributes][gender]"
|
||||
ng-model="user.statistic_profile.gender"
|
||||
ng-model="user.statistic_profile_attributes.gender"
|
||||
value="false"
|
||||
ng-disabled="preventField['profile.gender'] && user.statistic_profile.gender && !userForm['user[statistic_profile_attributes][gender]'].$dirty"/>
|
||||
ng-disabled="preventField['profile.gender'] && user.statistic_profile_attributes.gender && !userForm['user[statistic_profile_attributes][gender]'].$dirty"/>
|
||||
<i class="fa fa-female m-l-sm"></i> {{ 'app.shared.user.woman' | translate }}
|
||||
</label>
|
||||
<span class="exponent m-l-xs help-cursor" title="{{ 'app.shared.user.used_for_statistics' | translate }}"><i class="fa fa-asterisk" aria-hidden="true"></i></span>
|
||||
@ -86,11 +86,11 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_invoicing' | translate }}"><i class="fa fa-user"></i> <span class="exponent"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][last_name]"
|
||||
ng-model="user.profile.last_name"
|
||||
ng-model="user.profile_attributes.last_name"
|
||||
class="form-control"
|
||||
id="user_last_name"
|
||||
placeholder="{{ 'app.shared.user.surname' | translate }}"
|
||||
ng-disabled="preventField['profile.last_name'] && user.profile.last_name && !userForm['user[profile_attributes][last_name]'].$dirty"
|
||||
ng-disabled="preventField['profile.last_name'] && user.profile_attributes.last_name && !userForm['user[profile_attributes][last_name]'].$dirty"
|
||||
required/>
|
||||
</div>
|
||||
<span class="help-block" ng-show="userForm['user[profile_attributes][last_name]'].$dirty && userForm['user[profile_attributes][last_name]'].$error.required" translate>{{ 'app.shared.user.surname_is_required' }}</span>
|
||||
@ -101,11 +101,11 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_invoicing' | translate }}"><i class="fa fa-user"></i> <span class="exponent"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][first_name]"
|
||||
ng-model="user.profile.first_name"
|
||||
ng-model="user.profile_attributes.first_name"
|
||||
class="form-control"
|
||||
id="user_first_name"
|
||||
placeholder="{{ 'app.shared.user.first_name' | translate }}"
|
||||
ng-disabled="preventField['profile.first_name'] && user.profile.first_name && !userForm['user[profile_attributes][first_name]'].$dirty"
|
||||
ng-disabled="preventField['profile.first_name'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][first_name]'].$dirty"
|
||||
required/>
|
||||
</div>
|
||||
<span class="help-block" ng-show="userForm['user[profile_attributes][first_name]'].$dirty && userForm['user[profile_attributes][first_name]'].$error.required" translate>{{ 'app.shared.user.first_name_is_required' }}</span>
|
||||
@ -167,15 +167,15 @@
|
||||
<span class="help-block" ng-show="userForm['user[password_confirmation]'].$error.match" translate>{{ 'app.shared.user.confirmation_mismatch_with_password' }}</span>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-if="user.invoicing_profile.organization" ng-class="{'has-error': userForm['user[invoicing_profile_attributes][organization_attributes][name]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][name]'].$invalid}">
|
||||
<div class="form-group" ng-if="user.invoicing_profile_attributes.organization" ng-class="{'has-error': userForm['user[invoicing_profile_attributes][organization_attributes][name]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][name]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_invoicing' | translate }}"><i class="fa fa-building-o"></i> <span class="exponent"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="hidden"
|
||||
name="user[invoicing_profile_attributes][organization_attributes][id]"
|
||||
ng-value="user.invoicing_profile.organization.id" />
|
||||
ng-value="user.invoicing_profile_attributes.organization.id" />
|
||||
<input type="text"
|
||||
name="user[invoicing_profile_attributes][organization_attributes][name]"
|
||||
ng-model="user.invoicing_profile.organization.name"
|
||||
ng-model="user.invoicing_profile_attributes.organization.name"
|
||||
class="form-control"
|
||||
placeholder="{{ 'app.shared.user.organization_name' | translate }}"
|
||||
ng-required="user.invoicing_profile.organization"
|
||||
@ -184,19 +184,19 @@
|
||||
<span class="help-block" ng-show="userForm['user[invoicing_][organization_attributes][name]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][name]'].$error.required" translate>{{ 'app.shared.user.organization_name_is_required' }}</span>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-if="user.invoicing_profile.organization" ng-class="{'has-error': userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$invalid}">
|
||||
<div class="form-group" ng-if="user.invoicing_profile_attributes.organization" ng-class="{'has-error': userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_invoicing' | translate }}"><i class="fa fa-map-marker"></i> <span class="exponent"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="hidden"
|
||||
name="user[invoicing_profile_attributes][organization_attributes][address_attributes][id]"
|
||||
ng-value="user.invoicing_profile.organization.address.id" />
|
||||
ng-value="user.invoicing_profile_attributes.organization.address.id" />
|
||||
<input type="text"
|
||||
name="user[invoicing_profile_attributes][organization_attributes][address_attributes][address]"
|
||||
ng-model="user.invoicing_profile.organization.address.address"
|
||||
ng-model="user.invoicing_profile_attributes.organization.address.address"
|
||||
class="form-control"
|
||||
placeholder="{{ 'app.shared.user.organization_address' | translate }}"
|
||||
ng-required="user.invoicing_profile.organization"
|
||||
ng-disabled="preventField['profile.organization_address'] && user.invoicing_profile.organization.address.address && !userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$dirty">
|
||||
ng-disabled="preventField['profile.organization_address'] && user.invoicing_profile_attributes.organization.address.address && !userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$dirty">
|
||||
</div>
|
||||
<span class="help-block" ng-show="userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$dirty && userForm['user[invoicing_profile_attributes][organization_attributes][address_attributes][address]'].$error.required" translate>{{ 'app.shared.user.organization_address_is_required' }}</span>
|
||||
</div>
|
||||
@ -207,17 +207,17 @@
|
||||
<input type="text"
|
||||
id="user_birthday"
|
||||
class="form-control"
|
||||
ng-model="user.statistic_profile.birthday"
|
||||
ng-model="user.statistic_profile_attributes.birthday"
|
||||
uib-datepicker-popup="{{datePicker.format}}"
|
||||
datepicker-options="datePicker.options"
|
||||
is-open="datePicker.opened"
|
||||
placeholder="{{ 'app.shared.user.date_of_birth' | translate }}"
|
||||
ng-click="openDatePicker($event)"
|
||||
ng-disabled="preventField['profile.birthday'] && user.statistic_profile.birthday && !userForm['user[statistic_profile_attributes][birthday]'].$dirty"
|
||||
ng-disabled="preventField['profile.birthday'] && user.statistic_profile_attributes.birthday && !userForm['user[statistic_profile_attributes][birthday]'].$dirty"
|
||||
required/>
|
||||
<input type="hidden"
|
||||
name="user[statistic_profile_attributes][birthday]"
|
||||
value="{{user.statistic_profile.birthday | toIsoDate}}" />
|
||||
value="{{user.statistic_profile_attributes.birthday | toIsoDate}}" />
|
||||
</div>
|
||||
<span class="help-block" ng-show="userForm['user[statistic_profile_attributes][birthday]'].$dirty && userForm['user[statistic_profile_attributes][birthday]'].$error.required" translate>{{ 'app.shared.user.date_of_birth_is_required' }}</span>
|
||||
</div>
|
||||
@ -227,13 +227,13 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_invoicing' | translate }}"><i class="fa fa-map-marker"></i> <span class="exponent" ng-show="addressRequired"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="hidden"
|
||||
name="user[invoicing_profile_attributes][address_attributes][id]"
|
||||
ng-value="user.invoicing_profile.address.id" />
|
||||
ng-value="user.invoicing_profile_attributes.address.id" />
|
||||
<input type="text"
|
||||
name="user[invoicing_profile_attributes][address_attributes][address]"
|
||||
ng-model="user.invoicing_profile.address.address"
|
||||
ng-model="user.invoicing_profile_attributes.address.address"
|
||||
class="form-control"
|
||||
id="user_address"
|
||||
ng-disabled="preventField['profile.address'] && user.invoicing_profile.address.address && !userForm['user[invoicing_profile_attributes][address_attributes][address]'].$dirty"
|
||||
ng-disabled="preventField['profile.address'] && user.invoicing_profile_attributes.address.address && !userForm['user[invoicing_profile_attributes][address_attributes][address]'].$dirty"
|
||||
placeholder="{{ 'app.shared.user.address' | translate }}"
|
||||
ng-required="addressRequired"/>
|
||||
</div>
|
||||
@ -244,11 +244,11 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_reservation' | translate }}"><i class="fa fa-phone"></i> <span class="exponent" ng-show="phoneRequired"><i class="fa fa-asterisk" aria-hidden="true"></i></span></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][phone]"
|
||||
ng-model="user.profile.phone"
|
||||
ng-model="user.profile_attributes.phone"
|
||||
class="form-control"
|
||||
id="user_phone"
|
||||
placeholder="{{ 'app.shared.user.phone_number' | translate }}"
|
||||
ng-disabled="preventField['profile.phone'] && user.profile.phone && !userForm['user[profile_attributes][phone]'].$dirty"
|
||||
ng-disabled="preventField['profile.phone'] && user.profile_attributes.phone && !userForm['user[profile_attributes][phone]'].$dirty"
|
||||
ng-required="phoneRequired"/>
|
||||
</div>
|
||||
<span class="help-block" ng-show="userForm['user[profile_attributes][phone]'].$dirty && userForm['user[profile_attributes][phone]'].$error.required" translate>{{ 'app.shared.user.phone_number_is_required' }}</span>
|
||||
@ -259,12 +259,12 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-globe"></i> </span>
|
||||
<input type="url"
|
||||
name="user[profile_attributes][website]"
|
||||
ng-model="user.profile.website"
|
||||
ng-model="user.profile_attributes.website"
|
||||
class="form-control"
|
||||
id="user_website"
|
||||
ng-pattern="/^https?:\/\//"
|
||||
placeholder="{{ 'app.shared.user.website' | translate }} (http://...)"
|
||||
ng-disabled="preventField['profile.website'] && user.profile.website && !userForm['user[profile_attributes][website]'].$dirty"/>
|
||||
ng-disabled="preventField['profile.website'] && user.profile_attributes.website && !userForm['user[profile_attributes][website]'].$dirty"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -273,34 +273,34 @@
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-briefcase"></i> </span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][job]"
|
||||
ng-model="user.profile.job"
|
||||
ng-model="user.profile_attributes.job"
|
||||
class="form-control"
|
||||
id="user_job"
|
||||
placeholder="{{ 'app.shared.user.job' | translate }}"
|
||||
ng-disabled="preventField['profile.job'] && user.profile.job && !userForm['user[profile_attributes][job]'].$dirty"/>
|
||||
ng-disabled="preventField['profile.job'] && user.profile_attributes.job && !userForm['user[profile_attributes][job]'].$dirty"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="user_interest" class="help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}" translate>{{ 'app.shared.user.interests' }}</label>
|
||||
<textarea name="user[profile_attributes][interest]"
|
||||
ng-model="user.profile.interest"
|
||||
ng-model="user.profile_attributes.interest"
|
||||
rows="5"
|
||||
class="form-control"
|
||||
id="user_interest"
|
||||
placeholder=""
|
||||
ng-disabled="preventField['profile.interest'] && user.profile.interest && !userForm['user[profile_attributes][interest]'].$dirty"></textarea>
|
||||
ng-disabled="preventField['profile.interest'] && user.profile_attributes.interest && !userForm['user[profile_attributes][interest]'].$dirty"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="user_software_mastered" class="help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}" translate>{{ 'app.shared.user.CAD_softwares_mastered' }}</label>
|
||||
<textarea name="user[profile_attributes][software_mastered]"
|
||||
ng-model="user.profile.software_mastered"
|
||||
ng-model="user.profile_attributes.software_mastered"
|
||||
rows="5"
|
||||
class="form-control"
|
||||
id="user_software_mastered"
|
||||
placeholder=""
|
||||
ng-disabled="preventField['profile.software_mastered'] && user.profile.software_mastered && !userForm['user[profile_attributes][software_mastered]'].$dirty"></textarea>
|
||||
ng-disabled="preventField['profile.software_mastered'] && user.profile_attributes.software_mastered && !userForm['user[profile_attributes][software_mastered]'].$dirty"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- allow contact-->
|
||||
@ -332,232 +332,232 @@
|
||||
</div>
|
||||
|
||||
<div id="social" ng-init="social={}">
|
||||
<div class="form-group" ng-show="social.facebook || user.profile.facebook" ng-class="{'has-error': userForm['user[profile_attributes][facebook]'].$dirty && userForm['user[profile_attributes][facebook]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.facebook || user.profile_attributes.facebook" ng-class="{'has-error': userForm['user[profile_attributes][facebook]'].$dirty && userForm['user[profile_attributes][facebook]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-facebook"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][facebook]"
|
||||
ng-model="user.profile.facebook"
|
||||
ng-model="user.profile_attributes.facebook"
|
||||
class="form-control"
|
||||
id="user_facebook"
|
||||
ng-pattern="/^https?:\/\/.*?facebook/i"
|
||||
placeholder="https://www.facebook.com/..."
|
||||
ng-disabled="preventField['profile.facebook'] && user.profile.first_name && !userForm['user[profile_attributes][facebook]'].$dirty"
|
||||
ng-disabled="preventField['profile.facebook'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][facebook]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.twitter || user.profile.twitter" ng-class="{'has-error': userForm['user[profile_attributes][twitter]'].$dirty && userForm['user[profile_attributes][twitter]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.twitter || user.profile_attributes.twitter" ng-class="{'has-error': userForm['user[profile_attributes][twitter]'].$dirty && userForm['user[profile_attributes][twitter]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-twitter"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][twitter]"
|
||||
ng-model="user.profile.twitter"
|
||||
ng-model="user.profile_attributes.twitter"
|
||||
class="form-control"
|
||||
id="user_twitter"
|
||||
ng-pattern="/^https?:\/\/.*?twitter/"
|
||||
placeholder="https://twitter.com/..."
|
||||
ng-disabled="preventField['profile.twitter'] && user.profile.first_name && !userForm['user[profile_attributes][twitter]'].$dirty"
|
||||
ng-disabled="preventField['profile.twitter'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][twitter]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.google_plus || user.profile.google_plus" ng-class="{'has-error': userForm['user[profile_attributes][google_plus]'].$dirty && userForm['user[profile_attributes][google_plus]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.google_plus || user.profile_attributes.google_plus" ng-class="{'has-error': userForm['user[profile_attributes][google_plus]'].$dirty && userForm['user[profile_attributes][google_plus]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-google-plus"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][google_plus]"
|
||||
ng-model="user.profile.google_plus"
|
||||
ng-model="user.profile_attributes.google_plus"
|
||||
class="form-control"
|
||||
id="user_google_plus"
|
||||
ng-pattern="/^https?:\/\/.*?google/"
|
||||
placeholder="https://plus.google.com/+..."
|
||||
ng-disabled="preventField['profile.google_plus'] && user.profile.first_name && !userForm['user[profile_attributes][google_plus]'].$dirty"
|
||||
ng-disabled="preventField['profile.google_plus'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][google_plus]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.viadeo || user.profile.viadeo" ng-class="{'has-error': userForm['user[profile_attributes][viadeo]'].$dirty && userForm['user[profile_attributes][viadeo]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.viadeo || user.profile_attributes.viadeo" ng-class="{'has-error': userForm['user[profile_attributes][viadeo]'].$dirty && userForm['user[profile_attributes][viadeo]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-viadeo"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][viadeo]"
|
||||
ng-model="user.profile.viadeo"
|
||||
ng-model="user.profile_attributes.viadeo"
|
||||
class="form-control"
|
||||
id="user_viadeo"
|
||||
ng-pattern="/^https?:\/\/.*?viadeo/"
|
||||
placeholder="http://www.viadeo.com/fr/profile/..."
|
||||
ng-disabled="preventField['profile.viadeo'] && user.profile.first_name && !userForm['user[profile_attributes][viadeo]'].$dirty"
|
||||
ng-disabled="preventField['profile.viadeo'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][viadeo]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.linkedin || user.profile.linkedin" ng-class="{'has-error': userForm['user[profile_attributes][linkedin]'].$dirty && userForm['user[profile_attributes][linkedin]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.linkedin || user.profile_attributes.linkedin" ng-class="{'has-error': userForm['user[profile_attributes][linkedin]'].$dirty && userForm['user[profile_attributes][linkedin]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-linkedin"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][linkedin]"
|
||||
ng-model="user.profile.linkedin"
|
||||
ng-model="user.profile_attributes.linkedin"
|
||||
class="form-control"
|
||||
id="user_linkedin"
|
||||
ng-pattern="/^https?:\/\/.*?linkedin/"
|
||||
placeholder="https://www.linkedin.com/in/..."
|
||||
ng-disabled="preventField['profile.linkedin'] && user.profile.first_name && !userForm['user[profile_attributes][linkedin]'].$dirty"
|
||||
ng-disabled="preventField['profile.linkedin'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][linkedin]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.instagram || user.profile.instragram" ng-class="{'has-error': userForm['user[profile_attributes][instagram]'].$dirty && userForm['user[profile_attributes][instagram]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.instagram || user.profile_attributes.instragram" ng-class="{'has-error': userForm['user[profile_attributes][instagram]'].$dirty && userForm['user[profile_attributes][instagram]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-instagram"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][instagram]"
|
||||
ng-model="user.profile.instagram"
|
||||
ng-model="user.profile_attributes.instagram"
|
||||
class="form-control"
|
||||
id="user_instagram"
|
||||
ng-pattern="/^https?:\/\/.*?instagram/"
|
||||
placeholder="https://www.instagram.com/..."
|
||||
ng-disabled="preventField['profile.instagram'] && user.profile.first_name && !userForm['user[profile_attributes][instagram]'].$dirty"
|
||||
ng-disabled="preventField['profile.instagram'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][instagram]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.youtube || user.profile.youtube" ng-class="{'has-error': userForm['user[profile_attributes][youtube]'].$dirty && userForm['user[profile_attributes][youtube]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.youtube || user.profile_attributes.youtube" ng-class="{'has-error': userForm['user[profile_attributes][youtube]'].$dirty && userForm['user[profile_attributes][youtube]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-youtube"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][youtube]"
|
||||
ng-model="user.profile.youtube"
|
||||
ng-model="user.profile_attributes.youtube"
|
||||
class="form-control"
|
||||
id="user_youtube"
|
||||
ng-pattern="/^https?:\/\/.*?youtube/"
|
||||
placeholder="https://www.youtube.com/..."
|
||||
ng-disabled="preventField['profile.youtube'] && user.profile.first_name && !userForm['user[profile_attributes][youtube]'].$dirty"
|
||||
ng-disabled="preventField['profile.youtube'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][youtube]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.vimeo || user.profile.vimeo" ng-class="{'has-error': userForm['user[profile_attributes][vimeo]'].$dirty && userForm['user[profile_attributes][vimeo]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.vimeo || user.profile_attributes.vimeo" ng-class="{'has-error': userForm['user[profile_attributes][vimeo]'].$dirty && userForm['user[profile_attributes][vimeo]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-vimeo"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][vimeo]"
|
||||
ng-model="user.profile.vimeo"
|
||||
ng-model="user.profile_attributes.vimeo"
|
||||
class="form-control"
|
||||
id="user_vimeo"
|
||||
ng-pattern="/^https?:\/\/.*?vimeo/"
|
||||
placeholder="https://vimeo.com/..."
|
||||
ng-disabled="preventField['profile.vimeo'] && user.profile.first_name && !userForm['user[profile_attributes][vimeo]'].$dirty"
|
||||
ng-disabled="preventField['profile.vimeo'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][vimeo]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.dailymotion || user.profile.dailymotion" ng-class="{'has-error': userForm['user[profile_attributes][dailymotion]'].$dirty && userForm['user[profile_attributes][dailymotion]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.dailymotion || user.profile_attributes.dailymotion" ng-class="{'has-error': userForm['user[profile_attributes][dailymotion]'].$dirty && userForm['user[profile_attributes][dailymotion]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><img src="../../images/social/dailymotion.png" alt="d" class="fa-img"/></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][dailymotion]"
|
||||
ng-model="user.profile.dailymotion"
|
||||
ng-model="user.profile_attributes.dailymotion"
|
||||
class="form-control"
|
||||
id="user_dailymotion"
|
||||
ng-pattern="/^https?:\/\/.*?dailymotion/"
|
||||
placeholder="http://www.dailymotion.com/..."
|
||||
ng-disabled="preventField['profile.dailymotion'] && user.profile.first_name && !userForm['user[profile_attributes][dailymotion]'].$dirty"
|
||||
ng-disabled="preventField['profile.dailymotion'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][dailymotion]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group" ng-show="social.github || user.profile.github" ng-class="{'has-error': userForm['user[profile_attributes][github]'].$dirty && userForm['user[profile_attributes][github]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.github || user.profile_attributes.github" ng-class="{'has-error': userForm['user[profile_attributes][github]'].$dirty && userForm['user[profile_attributes][github]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-github"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][github]"
|
||||
ng-model="user.profile.github"
|
||||
ng-model="user.profile_attributes.github"
|
||||
class="form-control"
|
||||
id="user_github"
|
||||
ng-pattern="/^https?:\/\/.*?github/"
|
||||
placeholder="https://github.com/..."
|
||||
ng-disabled="preventField['profile.github'] && user.profile.first_name && !userForm['user[profile_attributes][github]'].$dirty"
|
||||
ng-disabled="preventField['profile.github'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][github]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.echosciences || user.profile.echosciences" ng-class="{'has-error': userForm['user[profile_attributes][echosciences]'].$dirty && userForm['user[profile_attributes][echosciences]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.echosciences || user.profile_attributes.echosciences" ng-class="{'has-error': userForm['user[profile_attributes][echosciences]'].$dirty && userForm['user[profile_attributes][echosciences]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><img src="../../images/social/echosciences.png" alt="d" class="fa-img"/></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][echosciences]"
|
||||
ng-model="user.profile.echosciences"
|
||||
ng-model="user.profile_attributes.echosciences"
|
||||
class="form-control"
|
||||
id="user_echosciences"
|
||||
ng-pattern="/^https?:\/\/.*?echosciences/"
|
||||
placeholder="http://www.echosciences-local.fr/membres/..."
|
||||
ng-disabled="preventField['profile.echosciences'] && user.profile.first_name && !userForm['user[profile_attributes][echosciences]'].$dirty"
|
||||
ng-disabled="preventField['profile.echosciences'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][echosciences]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.pinterest || user.profile.pinterest" ng-class="{'has-error': userForm['user[profile_attributes][pinterest]'].$dirty && userForm['user[profile_attributes][pinterest]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.pinterest || user.profile_attributes.pinterest" ng-class="{'has-error': userForm['user[profile_attributes][pinterest]'].$dirty && userForm['user[profile_attributes][pinterest]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-pinterest"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][pinterest]"
|
||||
ng-model="user.profile.pinterest"
|
||||
ng-model="user.profile_attributes.pinterest"
|
||||
class="form-control"
|
||||
id="user_pinterest"
|
||||
ng-pattern="/^https?:\/\/.*?pinterest/"
|
||||
placeholder="https://fr.pinterest.com/..."
|
||||
ng-disabled="preventField['profile.pinterest'] && user.profile.first_name && !userForm['user[profile_attributes][pinterest]'].$dirty"
|
||||
ng-disabled="preventField['profile.pinterest'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][pinterest]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.lastfm || user.profile.lastfm" ng-class="{'has-error': userForm['user[profile_attributes][lastfm]'].$dirty && userForm['user[profile_attributes][lastfm]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.lastfm || user.profile_attributes.lastfm" ng-class="{'has-error': userForm['user[profile_attributes][lastfm]'].$dirty && userForm['user[profile_attributes][lastfm]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-lastfm"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][lastfm]"
|
||||
ng-model="user.profile.lastfm"
|
||||
ng-model="user.profile_attributes.lastfm"
|
||||
class="form-control"
|
||||
id="user_lastfm"
|
||||
ng-pattern="/^https?:\/\/.*?last.fm/"
|
||||
placeholder="http://www.last.fm/fr/user/..."
|
||||
ng-disabled="preventField['profile.lastfm'] && user.profile.first_name && !userForm['user[profile_attributes][lastfm]'].$dirty"
|
||||
ng-disabled="preventField['profile.lastfm'] && user.profile_attributes.first_name && !userForm['user[profile_attributes][lastfm]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" ng-show="social.flickr || user.profile.flickr" ng-class="{'has-error': userForm['user[profile_attributes][flickr]'].$dirty && userForm['user[profile_attributes][flickr]'].$invalid}">
|
||||
<div class="form-group" ng-show="social.flickr || user.profile_attributes.flickr" ng-class="{'has-error': userForm['user[profile_attributes][flickr]'].$dirty && userForm['user[profile_attributes][flickr]'].$invalid}">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon help-cursor" title="{{ 'app.shared.user.used_for_profile' | translate }}"><i class="fa fa-flickr"></i></span>
|
||||
<input type="text"
|
||||
name="user[profile_attributes][flickr]"
|
||||
ng-model="user.profile.flickr"
|
||||
ng-model="user.profile_attributes.flickr"
|
||||
class="form-control"
|
||||
id="user_flickr"
|
||||
ng-pattern="/^https?:\/\/.*?flickr/"
|
||||
placeholder="https://www.flickr.com/photos/..."
|
||||
ng-disabled="preventField['profile.flickr'] && user.profile.flickr && !userForm['user[profile_attributes][flickr]'].$dirty"
|
||||
ng-disabled="preventField['profile.flickr'] && user.profile_attributes.flickr && !userForm['user[profile_attributes][flickr]'].$dirty"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="social-icons m-b">
|
||||
<div ng-click="social.facebook = !social.facebook" ng-hide="social.facebook || user.profile.facebook"><i class="fa fa-facebook fa-2x"></i></div>
|
||||
<div ng-click="social.twitter = !social.twitter" ng-hide="social.twitter || user.profile.twitter"><i class="fa fa-twitter fa-2x"></i></div>
|
||||
<div ng-click="social.google_plus = !social.google_plus" ng-hide="social.google_plus || user.profile.google_plus"><i class="fa fa-google-plus fa-2x"></i></div>
|
||||
<div ng-click="social.viadeo = !social.viadeo" ng-hide="social.viadeo || user.profile.viadeo"><i class="fa fa-viadeo fa-2x"></i></div>
|
||||
<div ng-click="social.linkedin = !social.linkedin" ng-hide="social.linkedin || user.profile.linkedin"><i class="fa fa-linkedin fa-2x"></i></div>
|
||||
<div ng-click="social.instagram = !social.instagram" ng-hide="social.instagram || user.profile.instagram"><i class="fa fa-instagram fa-2x"></i></div>
|
||||
<div ng-click="social.youtube = !social.youtube" ng-hide="social.youtube || user.profile.youtube"><i class="fa fa-youtube fa-2x"></i></div>
|
||||
<div ng-click="social.vimeo = !social.vimeo" ng-hide="social.vimeo || user.profile.vimeo"><i class="fa fa-vimeo fa-2x"></i></div>
|
||||
<div ng-click="social.dailymotion = !social.dailymotion" ng-hide="social.dailymotion || user.profile.dailymotion"><img src="../../images/social/dailymotion.png" alt="d" class="fa-img contrast-250 fa-2x"/></div>
|
||||
<div ng-click="social.github = !social.github" ng-hide="social.github || user.profile.github"><i class="fa fa-github fa-2x"></i></div>
|
||||
<div ng-click="social.echosciences = !social.echosciences" ng-hide="social.echosciences || user.profile.echosciences"><img src="../../images/social/echosciences.png" alt="E" class="fa-img contrast-250 fa-2x"/></div>
|
||||
<div ng-click="social.pinterest = !social.pinterest" ng-hide="social.pinterest || user.profile.pinterest"><i class="fa fa-pinterest fa-2x"></i></div>
|
||||
<div ng-click="social.lastfm = !social.lastfm" ng-hide="social.lastfm || user.profile.lastfm"><i class="fa fa-lastfm fa-2x"></i></div>
|
||||
<div ng-click="social.flickr = !social.flickr" ng-hide="social.flickr || user.profile.flickr"><i class="fa fa-flickr fa-2x"></i></div>
|
||||
<div ng-click="social.facebook = !social.facebook" ng-hide="social.facebook || user.profile_attributes.facebook"><i class="fa fa-facebook fa-2x"></i></div>
|
||||
<div ng-click="social.twitter = !social.twitter" ng-hide="social.twitter || user.profile_attributes.twitter"><i class="fa fa-twitter fa-2x"></i></div>
|
||||
<div ng-click="social.google_plus = !social.google_plus" ng-hide="social.google_plus || user.profile_attributes.google_plus"><i class="fa fa-google-plus fa-2x"></i></div>
|
||||
<div ng-click="social.viadeo = !social.viadeo" ng-hide="social.viadeo || user.profile_attributes.viadeo"><i class="fa fa-viadeo fa-2x"></i></div>
|
||||
<div ng-click="social.linkedin = !social.linkedin" ng-hide="social.linkedin || user.profile_attributes.linkedin"><i class="fa fa-linkedin fa-2x"></i></div>
|
||||
<div ng-click="social.instagram = !social.instagram" ng-hide="social.instagram || user.profile_attributes.instagram"><i class="fa fa-instagram fa-2x"></i></div>
|
||||
<div ng-click="social.youtube = !social.youtube" ng-hide="social.youtube || user.profile_attributes.youtube"><i class="fa fa-youtube fa-2x"></i></div>
|
||||
<div ng-click="social.vimeo = !social.vimeo" ng-hide="social.vimeo || user.profile_attributes.vimeo"><i class="fa fa-vimeo fa-2x"></i></div>
|
||||
<div ng-click="social.dailymotion = !social.dailymotion" ng-hide="social.dailymotion || user.profile_attributes.dailymotion"><img src="../../images/social/dailymotion.png" alt="d" class="fa-img contrast-250 fa-2x"/></div>
|
||||
<div ng-click="social.github = !social.github" ng-hide="social.github || user.profile_attributes.github"><i class="fa fa-github fa-2x"></i></div>
|
||||
<div ng-click="social.echosciences = !social.echosciences" ng-hide="social.echosciences || user.profile_attributes.echosciences"><img src="../../images/social/echosciences.png" alt="E" class="fa-img contrast-250 fa-2x"/></div>
|
||||
<div ng-click="social.pinterest = !social.pinterest" ng-hide="social.pinterest || user.profile_attributes.pinterest"><i class="fa fa-pinterest fa-2x"></i></div>
|
||||
<div ng-click="social.lastfm = !social.lastfm" ng-hide="social.lastfm || user.profile_attributes.lastfm"><i class="fa fa-lastfm fa-2x"></i></div>
|
||||
<div ng-click="social.flickr = !social.flickr" ng-hide="social.flickr || user.profile_attributes.flickr"><i class="fa fa-flickr fa-2x"></i></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
<a ng-show="user.profile[network]" ng-href="{{user.profile[network]}}" target="_blank">
|
||||
<a ng-show="user.profile_attributes[network]" ng-href="{{user.profile_attributes[network]}}" target="_blank">
|
||||
<img ng-src="{{image}}" alt="{{altText}}" class="fa-img" ng-show="image"/>
|
||||
<i class="fa {{faClass}}" ng-hide="image"></i>
|
||||
</a>
|
||||
</a>
|
||||
|
@ -33,7 +33,7 @@
|
||||
<li class="dropdown user-profile-nav user-menu-dropdown" ng-if="isAuthenticated()" uib-dropdown>
|
||||
<a class="dropdown-toggle pointer" uib-dropdown-toggle>
|
||||
<span class="avatar text-center">
|
||||
<fab-user-avatar ng-model="currentUser.profile.user_avatar" avatar-class="thumb-50"></fab-user-avatar>
|
||||
<fab-user-avatar ng-model="currentUser.profile_attributes.user_avatar_attributes" avatar-class="thumb-50"></fab-user-avatar>
|
||||
<span class="user-name m-l-sm text-black-light font-sbold hidden-sm">{{currentUser.name}} </span>
|
||||
<b class="caret"></b>
|
||||
</span>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<section class="profile-top text-white widget panel b-a m row">
|
||||
<div class="col-lg-2 col-md-12 profile-top-pictos">
|
||||
<div class="avatar thumb-140-wrapper img m-b-md">
|
||||
<fab-user-avatar ng-model="user.profile.user_avatar" avatar-class="thumb-140"></fab-user-avatar>
|
||||
<fab-user-avatar ng-model="user.profile_attributes.user_avatar_attributes" avatar-class="thumb-140"></fab-user-avatar>
|
||||
</div>
|
||||
<br/>
|
||||
<div class="social-links links-center" ng-if="social.networks.length <= 4">
|
||||
|
Loading…
x
Reference in New Issue
Block a user