parent
5bd295a9ea
commit
bbc7611646
6 changed files with 591 additions and 97 deletions
@ -0,0 +1,16 @@ |
||||
from django.conf.urls import patterns, url |
||||
from django.contrib.auth.decorators import login_required |
||||
from views import SettingsView, ProfileView, CalendarView, UserView, UserExpositionsView, UserConferenceView, UserSeminarView |
||||
|
||||
urlpatterns = patterns('', |
||||
url(r'^(?P<url>.*)/expositions/(?P<page>\d+)/$', UserExpositionsView.as_view()), |
||||
url(r'^(?P<url>.*)/expositions/$', UserExpositionsView.as_view()), |
||||
url(r'^(?P<url>.*)/seminars/(?P<page>\d+)/$', UserSeminarView.as_view()), |
||||
url(r'^(?P<url>.*)/seminars/$', UserSeminarView.as_view()), |
||||
url(r'^(?P<url>.*)/conferences/(?P<page>\d+)/$', UserConferenceView.as_view()), |
||||
url(r'^(?P<url>.*)/conferences/$', UserConferenceView.as_view()), |
||||
url(r'^(?P<url>.*)/events/(?P<page>\d+)/$', UserView.as_view()), |
||||
url(r'^(?P<url>.*)/events/$', UserView.as_view()), |
||||
url(r'^(?P<url>.*)/$', UserView.as_view()), |
||||
) |
||||
|
||||
@ -0,0 +1,449 @@ |
||||
{% load static %} |
||||
{% load i18n %} |
||||
{% load template_filters %} |
||||
|
||||
|
||||
<div class="m-article"> |
||||
<div class="item-wrap clearfix"> |
||||
|
||||
{# avatar #} |
||||
<aside> |
||||
<div class="i-pict p-editable"> |
||||
{% if request.user.profile.avatar %} |
||||
<img src="{{ request.user.profile.avatar.url }}" alt="" /> |
||||
{% endif %} |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" enctype="multipart/form-data" id="avatar_form"action="/profile/update/avatar/" method="post">{% csrf_token %} |
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ avatar_form.avatar.label }}</label> |
||||
<div class="epf-field"> |
||||
<div class="input-file clearfix"> |
||||
<div class="button icon-clip">{% trans 'выберите файл' %}</div> |
||||
<div class="file-text placehlder">{% trans 'Файл не выбран' %}</div> |
||||
<div class="if-field-wrap"><input id="id_avatar" type="file" name="avatar" /></div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
</aside> |
||||
{# END avatar #} |
||||
<div class="i-info"> |
||||
<header> |
||||
{# country and city #} |
||||
<div class="i-place p-editable"> |
||||
{% if home_form.instance.country %} |
||||
<span> |
||||
{% else %} |
||||
<span style="display:none;"> |
||||
{% endif %} |
||||
<a href="#">{{ home_form.instance.country }}</a> |
||||
</span> |
||||
|
||||
{% if home_form.instance.city %} |
||||
<span> |
||||
{% else %} |
||||
<span style="display:none;"> |
||||
{% endif %} |
||||
, <a href="#">{{ home_form.instance.city }}</a> |
||||
</span> |
||||
|
||||
<div class="edit-wrap e-left"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="home_form" action="/profile/update/home/" method="post">{% csrf_token %} |
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ home_form.country.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ home_form.country }} |
||||
|
||||
</div> |
||||
</div> |
||||
|
||||
<div class="epfl"> |
||||
<label>{% trans 'Город' %}</label> |
||||
<div class="epf-field"> |
||||
<select name="city" style="width: 200px;"> |
||||
|
||||
</select> |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# END country and city #} |
||||
|
||||
{# name #} |
||||
<div class="i-title p-editable"> |
||||
<span>{{ name_form.get_full_name }}</span> |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="name_form" action="/profile/update/name/" |
||||
method="post" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ name_form.first_name.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ name_form.first_name }} |
||||
</div> |
||||
</div> |
||||
<div class="epfl"> |
||||
<label>{{ name_form.last_name.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ name_form.last_name }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# END name #} |
||||
</header> |
||||
|
||||
{# position #} |
||||
<div class="i-position p-editable"> |
||||
<p> |
||||
{{ work_form.position.value }} |
||||
{% if work_form.work.value %} |
||||
{% trans 'в' %} {{ work_form.work.value }} |
||||
{% endif %} |
||||
</p> |
||||
|
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="work_form" action="/profile/update/work/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ work_form.position.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ work_form.position }} |
||||
</div> |
||||
</div> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ work_form.work.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ work_form.work }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# END position #} |
||||
|
||||
|
||||
{# description #} |
||||
<div class="i-descr p-editable"> |
||||
<p>{{ about_company_form.about_company.value }}</p> |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="about_company_form" action="/profile/update/about-company/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ about_company_form.about_company.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ about_company_form.about_company }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# END description #} |
||||
<hr /> |
||||
|
||||
<div class="i-contacts clearfix"> |
||||
<div class="ic-buttons"> |
||||
<a class="button icon-edit icb-edit-profile" href="#">{% trans 'редактировать профиль' %}</a> |
||||
<a class="button orange icon-edit icb-exit-edit" href="#">{% trans 'завершить редактирование' %}</a> |
||||
<div class="p-editable"> |
||||
<ul class="soc-media-buttons"> |
||||
<li><a href="{% if social_form.facebook.value %} {{ social_form.facebook.value }} {%else %}#{% endif %}"> |
||||
<img src="{% static 'client/img/soc-medias/sm-icon-fb.png' %}" title="Facebook" alt="Facebook" /> |
||||
</a> |
||||
</li> |
||||
<li><a href="{% if social_form.linkedin.value %} {{ social_form.linkedin.value }} {%else %}#{% endif %}"> |
||||
<img src="{% static 'client/img/soc-medias/sm-icon-lin.png' %}" title="LinkedIn" alt="LinkedIn" /> |
||||
</a> |
||||
</li> |
||||
<li><a href="{% if social_form.vk.value %} {{ social_form.vk.value }} {%else %}#{% endif %}"> |
||||
<img src="{% static 'client/img/soc-medias/sm-icon-vk.png' %}" title="В контакте" alt="В контакте" /> |
||||
</a> |
||||
</li> |
||||
<li><a href="{% if social_form.twitter.value %} {{ social_form.twitter.value }} {%else %}#{% endif %}"> |
||||
<img src="{% static 'client/img/soc-medias/sm-icon-twit.png' %}" title="Twitter" alt="Twitter" /> |
||||
</a> |
||||
</li> |
||||
</ul> |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="social_form" action="/profile/update/social/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label><img src="{% static 'client/img/soc-medias/sm-icon-fb-w.png' %}" title="Facebook" alt="Facebook" /> {{ social_form.facebook.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ social_form.facebook }} |
||||
</div> |
||||
</div> |
||||
|
||||
<div class="epfl"> |
||||
<label><img src="{% static 'client/img/soc-medias/sm-icon-lin-w.png' %}" title="LinkedIn" alt="LinkedIn" /> {{ social_form.linkedin.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ social_form.linkedin }} |
||||
</div> |
||||
</div> |
||||
|
||||
<div class="epfl"> |
||||
<label><img src="{% static 'client/img/soc-medias/sm-icon-vk-w.png' %}" title="В контакте" alt="В контакте" /> {{ social_form.vk.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ social_form.vk }} |
||||
</div> |
||||
</div> |
||||
|
||||
<div class="epfl"> |
||||
<label><img src="{% static 'client/img/soc-medias/sm-icon-twit-w.png' %}" title="Twitter" alt="Twitter" /> {{ social_form.twitter.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ social_form.twitter }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# contacts #} |
||||
<div class="ic-links"> |
||||
<div class="ic-tel p-editable"> |
||||
{% if phone_form.phone.value %} |
||||
<span>{{ phone_form.phone.value|phone }}</span> |
||||
{% endif %} |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="phone_form" action="/profile/update/phone/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ phone_form.phone.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ phone_form.phone }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
<!-- |
||||
<div class="ic-mail p-editable"> |
||||
{% if email_form.email.value %} |
||||
<a class="icon-mail" href="mailto:{{ email_form.email.value }}">{{ email_form.email.value }}</a> |
||||
{% endif %} |
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix" action="/profile/update/email/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ email_form.email.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ email_form.email }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
--> |
||||
|
||||
<div class="ic-site p-editable"> |
||||
{% if web_page_form.web_page.value %} |
||||
<a class="icon-ext-link" href="{% if web_page_form.web_page.value %}{{ web_page_form.web_page.value }}{% else %}#{% endif %}" target="_blank"> |
||||
{% if web_page_form.web_page.value %} |
||||
{{ web_page_form.web_page.value }} |
||||
{% endif %} |
||||
</a> |
||||
{% endif %} |
||||
|
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="web_page_form" action="/profile/update/web-page/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ web_page_form.web_page.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ web_page_form.web_page }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
{# END contacts #} |
||||
</div> |
||||
</div> |
||||
|
||||
<hr/> |
||||
{# about #} |
||||
<div class="i-additional"> |
||||
<div class="ia-title">{% trans 'О себе:' %}</div> |
||||
|
||||
<div class="p-editable"> |
||||
<p>{{ about_form.about.value }}</p> |
||||
|
||||
<div class="edit-wrap"> |
||||
<a class="e-btn" href="#">{% trans 'редактировать' %}</a> |
||||
<div class="e-form"> |
||||
<form class="clearfix update-profile-form" id="about_form" action="/profile/update/about/" method="post">{% csrf_token %} |
||||
|
||||
<div class="ef-body"> |
||||
|
||||
<div class="epfl"> |
||||
<label>{{ about_form.about.label }}</label> |
||||
<div class="epf-field"> |
||||
{{ about_form.about }} |
||||
</div> |
||||
</div> |
||||
|
||||
</div> |
||||
|
||||
<div class="ef-buttons"> |
||||
<button type="submit" class="lnk icon-save">{% trans 'Сохранить' %}</button> |
||||
</div> |
||||
</form> |
||||
|
||||
<a class="ef-close" href="#">{% trans 'закрыть' %}</a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{# END about #} |
||||
|
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
{% block scripts %} |
||||
<script src="{% static 'client/js/_modules/page.profile.js' %}"></script> |
||||
<script> |
||||
//js module initialization |
||||
EXPO.profile.init({ |
||||
// class seletor to identify required forms on page |
||||
updateFormClass:'update-profile-form', |
||||
// text and paths for dynamically rendered selectboxes |
||||
selectBox:[ |
||||
{id:'id_country'}, |
||||
{id:'id_theme', |
||||
placeHolder:'Выберите тематику компании' |
||||
}, |
||||
{id:'id_city', |
||||
placeholder:'Search city', |
||||
path:'/city/get-city/' |
||||
}, |
||||
{id:'id_company', |
||||
placeholder:'Search company', |
||||
path:'/company/get-company/' |
||||
} |
||||
] |
||||
}); |
||||
</script> |
||||
{% endblock %} |
||||
@ -0,0 +1,102 @@ |
||||
{% load static %} |
||||
{% load i18n %} |
||||
{% load template_filters %} |
||||
|
||||
|
||||
<div class="m-article"> |
||||
<div class="item-wrap clearfix"> |
||||
<aside> |
||||
{% if member.profile.avatar %} |
||||
<div class="i-pict"> |
||||
<img src="{{ member.profile.avatar.url }}" alt="" /> |
||||
</div> |
||||
{% endif %} |
||||
</aside> |
||||
<div class="i-info"> |
||||
<header> |
||||
<div class="i-place"> |
||||
{% if member.profile.country %} |
||||
<a href="#">{{ member.profile.country }}</a>, <a href="#">{{ member.profile.city }}</a> |
||||
{% endif %} |
||||
</div> |
||||
<div class="i-title">{{ member.get_full_name }}</div> |
||||
</header> |
||||
|
||||
<div class="i-position">{{ member.profile.position }} |
||||
{% if member.company %} |
||||
в <a href="{{ member.company.get_permanent_url }}">“{{ member.company }}”</a> |
||||
{% else %} |
||||
{{ member.profile.work }} |
||||
{% endif %} |
||||
</div> |
||||
|
||||
<div class="i-descr"> |
||||
{{ member.profile.about_company|safe }} |
||||
</div> |
||||
|
||||
<hr /> |
||||
|
||||
<div class="i-contacts clearfix"> |
||||
<div class="ic-buttons"> |
||||
{% if user.is_authenticated %} |
||||
<a class="button icon-msg pw-open" href="#pw-reply">{% trans 'отправить сообщение' %}</a> |
||||
{% endif %} |
||||
|
||||
<ul class="soc-media-buttons"> |
||||
{% if member.profile.facebook %} |
||||
<li><a href="{{ member.profile.facebook }}"><img src="{% static 'client/img/soc-medias/sm-icon-fb.png' %}" title="Facebook" alt="Facebook" /></a></li> |
||||
{% endif %} |
||||
{% if member.profile.linkedin %} |
||||
<li><a href="{{ member.profile.linkedin }}"><img src="{% static 'client/img/soc-medias/sm-icon-lin.png' %}" title="LinkedIn" alt="LinkedIn" /></a></li> |
||||
{% endif %} |
||||
{% if member.profile.vk %} |
||||
<li><a href="{{ member.profile.vk }}"><img src="{% static 'client/img/soc-medias/sm-icon-vk.png' %}" title="В контакте" alt="В контакте" /></a></li> |
||||
{% endif %} |
||||
{% if member.profile.twitter %} |
||||
<li><a href="{{ member.profile.twitter }}"><img src="{% static 'client/img/soc-medias/sm-icon-twit.png' %}" title="Twitter" alt="Twitter" /></a></li> |
||||
{% endif %} |
||||
</ul> |
||||
</div> |
||||
|
||||
<div class="ic-links"> |
||||
{% if member.profile.phone %} |
||||
<div class="ic-tel"> |
||||
{{ member.profile.phone|phone }} |
||||
</div> |
||||
{% endif %} |
||||
{% if member.email %} |
||||
<div class="ic-mail"> |
||||
<a class="icon-mail" href="mailto:{{ member.email }}">{{ member.email }}</a> |
||||
</div> |
||||
{% endif %} |
||||
{% if member.profile.web_page %} |
||||
<div class="ic-site"> |
||||
<a class="icon-ext-link" href="{{ member.profile.web_page }}" target="_blank">{{ member.profile.web_page }}</a> |
||||
</div> |
||||
{% endif %} |
||||
</div> |
||||
</div> |
||||
|
||||
<hr /> |
||||
|
||||
<div class="i-additional"> |
||||
<div class="ia-title">{% trans 'О себе' %}:</div> |
||||
{{ member.profile.about|safe }} |
||||
</div> |
||||
|
||||
</div> |
||||
<div class="i-statistics"> |
||||
<header class="clearfix"> |
||||
<div class="ish-title">{% trans 'Участие в событиях' %}</div> |
||||
|
||||
<div class="ish-data"> |
||||
<span><a href="/user/{{ member.url }}/expositions/"><b>{{ member.get_expositions_number }}</b> в выставках</a></span> |
||||
<span><a href="/user/{{ member.url }}/conferences/"><b>{{ member.get_conferences_number }}</b> в конференциях</a></span> |
||||
<span><a href="/user/{{ member.url }}/seminars/"><b>{{ member.get_seminars_number }}</b> в семинарах</a></span> |
||||
</div> |
||||
</header> |
||||
<ul class="cat-list cl-exhibitions"> |
||||
</ul> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
Loading…
Reference in new issue