{**
* Добавление / удаление из друзей
*}
{$component = 'user-friend'}
{component_define_params params=[ 'friendship', 'tag', 'userTarget', 'mods', 'classes', 'attributes' ]}
{block 'user_friend_options'}
{$tag = $tag|default:'li'}
{if $friendship}
{$status = $friendship->getFriendStatus()}
{$userCurrentId = $oUserCurrent->getId()}
{$userToId = $friendship->getUserTo()}
{* Добавлен *}
{if $status == $USER_FRIEND_ACCEPT + $USER_FRIEND_OFFER || $status == $USER_FRIEND_ACCEPT + $USER_FRIEND_ACCEPT}
{$status = 'added'}
{* Ожидает подтверждения *}
{elseif ( $friendship->getStatusTo() == $USER_FRIEND_REJECT && $friendship->getStatusFrom() == $USER_FRIEND_OFFER && $userToId == $userCurrentId )
|| ( $status == $USER_FRIEND_OFFER + $USER_FRIEND_NULL && $userCurrentId == $userToId )}
{$status = 'pending'}
{* Приглашение отклонено *}
{elseif $status == $USER_FRIEND_OFFER + $USER_FRIEND_REJECT && $userToId != $userCurrentId}
{$status = 'rejected'}
{* Приглашение отправлено *}
{elseif $status == $USER_FRIEND_OFFER + $USER_FRIEND_NULL && $userCurrentId == $friendship->getUserFrom()}
{$status = 'sent'}
{* Текущий пользователь удалил из друзей target пользователя, *}
{* но предложение target пользователя еще в силе *}
{else}
{$status = 'linked'}
{/if}
{* Добавить в друзья *}
{else}
{$status = 'notfriends'}
{/if}
{/block}
<{$tag} class="{$component} {cmods name=$component mods=$mods} {$classes}" {cattr list=$attributes} data-status="{$status}" data-target="{$userTarget->getId()}">
{block 'user_friend'}
{if in_array( $status, [ 'sent', 'rejected' ] )}
{lang name="user.friends.status.{$status}"}
{else}
{lang name="user.friends.status.{$status}"}
{/if}
{/block}
{$tag}>