Beispiel #1
0
 public static function _init()
 {
     static::$_properties['name']['label'] = term('member.name');
     static::$_properties['name']['validation']['min_length'][] = conf('member.name.validation.length.min');
     static::$_properties['name']['validation']['max_length'][] = conf('member.name.validation.length.max');
     if (is_enabled('notice') && conf('mention.isEnabled', 'notice')) {
         static::$_properties['name']['validation']['match_pattern'][] = sprintf('/^(%s)$/u', conf('member.name.validation.match_patterns.register'));
         $method = conf('member.name.validation.blacklist.method');
         if (is_callable($method)) {
             static::$_properties['name']['validation']['not_in_array'][] = call_user_func($method);
         }
     }
     static::$_properties['register_type']['validation']['in_array'][] = Site_Member::get_accept_member_register_types();
     $sex_options = Site_Form::get_form_options4config('term.member.sex.options');
     static::$_properties['sex']['label'] = term('member.sex.label');
     static::$_properties['sex']['form']['options'] = $sex_options;
     static::$_properties['sex']['validation']['in_array'][] = array_keys($sex_options);
     $options_public_flag = Site_Util::get_public_flags();
     static::$_properties['sex_public_flag']['label'] = sprintf('%sの%s', term('member.sex.label'), term('public_flag.label'));
     static::$_properties['sex_public_flag']['form'] = Site_Form::get_public_flag_configs();
     static::$_properties['sex_public_flag']['validation']['in_array'][] = $options_public_flag;
     static::$_properties['birthyear']['label'] = term('member.birthyear');
     $options = Form_Util::get_year_options(conf('member.profile.birthday.year_from'), conf('member.profile.birthday.year_to'));
     static::$_properties['birthyear']['form']['options'] = $options;
     static::$_properties['birthyear']['validation']['in_array'][] = array_keys($options);
     static::$_properties['birthyear_public_flag']['label'] = sprintf('%sの%s', term('member.birthyear'), term('public_flag.label'));
     static::$_properties['birthyear_public_flag']['form'] = Site_Form::get_public_flag_configs();
     static::$_properties['birthyear_public_flag']['validation']['in_array'][] = $options_public_flag;
     static::$_properties['birthday']['label'] = term('member.birthday');
     static::$_properties['birthday_public_flag']['label'] = sprintf('%sの%s', term('member.birthday'), term('public_flag.label'));
     static::$_properties['birthday_public_flag']['form'] = Site_Form::get_public_flag_configs();
     static::$_properties['birthday_public_flag']['validation']['in_array'][] = $options_public_flag;
     static::$_properties['invite_member_id'] = Util_Orm::get_relational_numeric_key_prop(false);
 }
Beispiel #2
0
 /**
  * Usage (from command line):
  *
  * php oil r user:delete user_id
  *
  * @return string
  */
 public static function delete($user_id)
 {
     try {
         \Site_Member::delete($user_id);
         return \Util_Task::output_message(sprintf('Delete site user. id: %d', $user_id));
     } catch (\FuelException $e) {
         return \Util_Task::output_message(sprintf('Delete site user error: %s', $e->getMessage()), false);
     }
 }
Beispiel #3
0
 public function action_delete()
 {
     Util_security::check_method('POST');
     Util_security::check_csrf();
     $form = $this->form_leave();
     $val = $form->validation();
     if (!$val->run()) {
         Session::set_flash('error', $val->show_errors());
         $this->action_index();
         return;
     }
     if (!$this->u->check_registered_oauth(true) && !$this->auth_instance->check_password()) {
         Session::set_flash('error', term('site.password') . 'が正しくありません');
         $this->action_index();
         return;
     }
     $error_message = '';
     $is_transaction_rollback = false;
     try {
         $message = Site_Member::remove($this->u);
         $this->auth_instance->logout();
         Session::set_flash('message', $message);
         Response::redirect(conf('login_uri.site'));
     } catch (EmailValidationFailedException $e) {
         Util_Toolkit::log_error('send mail error: ' . __METHOD__ . ' validation error');
         $error_message = 'メール送信エラー';
     } catch (EmailSendingFailedException $e) {
         Util_Toolkit::log_error('send mail error: ' . __METHOD__ . ' sending error');
         $error_message = 'メール送信エラー';
     } catch (SimpleUserUpdateException $e) {
         $is_transaction_rollback = true;
         $error_message = term('member.view') . 'が存在しません。';
     } catch (Database_Exception $e) {
         $is_transaction_rollback = true;
         $error_message = Site_Controller::get_error_message($e, true);
     } catch (FuelException $e) {
         $is_transaction_rollback = true;
         if (!($error_message = $e->getMessage())) {
             $error_message = term('site.left') . 'に失敗しました。';
         }
     }
     if ($error_message) {
         if ($is_transaction_rollback && DB::in_transaction()) {
             DB::rollback_transaction();
         }
         Session::set_flash('error', $error_message);
     }
     $this->action_index();
 }
Beispiel #4
0
 /**
  * Mmeber_Profile_Image edit
  * 
  * @access  public
  * @return  Response
  */
 public function action_edit()
 {
     Util_security::check_method('POST');
     Util_security::check_csrf();
     try {
         DB::start_transaction();
         $file = Site_Member::save_profile_image($this->u);
         DB::commit_transaction();
         Session::set_flash('message', term('site.picture') . 'を更新しました。');
     } catch (Database_Exception $e) {
         if (DB::in_transaction()) {
             DB::rollback_transaction();
         }
         Session::set_flash('error', Site_Controller::get_error_message($e, true));
     } catch (FuelException $e) {
         if (DB::in_transaction()) {
             DB::rollback_transaction();
         }
         Session::set_flash('error', $e->getMessage());
     }
     Response::redirect('member/profile/image');
 }
Beispiel #5
0
 /**
  * News delete
  * 
  * @access  public
  * @params  integer
  * @return  Response
  */
 public function action_delete($id = null)
 {
     $id = (int) $id;
     \Util_security::check_method('POST');
     \Util_security::check_csrf();
     $error_message = '';
     $is_transaction_rollback = false;
     try {
         $member = \Model_Member::check_authority($id);
         $message = \Site_Member::remove($member);
         \Session::set_flash('message', $message);
     } catch (\EmailValidationFailedException $e) {
         \Util_Toolkit::log_error('send mail error: ' . __METHOD__ . ' validation error');
         $error_message = 'メール送信エラー';
     } catch (\EmailSendingFailedException $e) {
         \Util_Toolkit::log_error('send mail error: ' . __METHOD__ . ' sending error');
         $error_message = 'メール送信エラー';
     } catch (\Auth\SimpleUserUpdateException $e) {
         $is_transaction_rollback = true;
         $error_message = term('member.view') . 'が存在しません。';
     } catch (\Database_Exception $e) {
         $is_transaction_rollback = true;
         $error_message = \Site_Controller::get_error_message($e, true);
     } catch (\FuelException $e) {
         $is_transaction_rollback = true;
         if (!($error_message = $e->getMessage())) {
             $error_message = term('site.left') . 'に失敗しました。';
         }
     }
     if ($error_message) {
         if ($is_transaction_rollback && \DB::in_transaction()) {
             \DB::rollback_transaction();
         }
         \Session::set_flash('error', $error_message);
     }
     \Response::redirect(\Site_Util::get_redirect_uri('admin/member'));
 }
Beispiel #6
0
 protected function set_current_member_config()
 {
     $this->member_config = Site_Member::get_member_config_with_default_value($this->u->id);
     View::set_global('member_config', $this->member_config);
 }
Beispiel #7
0
<?php

$is_detail = true;
$attr = array('class' => 'timelineBox js-hide-btn', 'id' => 'timelineBox_' . $timeline_id, 'data-id' => $timeline_id, 'data-hidden_btn' => 'btn_dropdown_' . $timeline_id, 'data-hidden_btn_absolute' => 1);
if (!empty($timeline_cache_id)) {
    $is_detail = false;
    $attr['data-list_id'] = $timeline_cache_id;
    $attr['data-comment_count'] = $comment_count;
    $attr['data-like_count'] = $like_count;
}
$access_from_member_relation = null;
if (\Timeline\Site_Util::check_type_to_get_access_from($type)) {
    $access_from_member_relation = \Site_Member::get_access_from_member_relation($member_id, $self_member_id);
}
$member = Model_Member::check_authority($member_id);
if (isset($liked_timeline_ids)) {
    echo Form::hidden('liked_timeline_ids', json_encode($liked_timeline_ids), array('id' => 'liked_timeline_ids'));
}
?>
<div <?php 
echo Util_Array::conv_array2attr_string($attr);
?>
>
	<div class="row member_contents">
		<div class="col-xs-1"><?php 
echo member_image($member);
?>
</div>
		<div class="col-xs-11">
			<div class="member_info">
				<b class="fullname"><?php 
Beispiel #8
0
 public static function check_is_watch_target_content4type_key($member_id, $type_key)
 {
     return (bool) \Site_Member::get_config($member_id, self::get_member_config_name_for_watch_content($type_key));
 }
Beispiel #9
0
 protected function check_required_setting_and_redirect()
 {
     if (IS_ADMIN) {
         return;
     }
     if (IS_API) {
         return;
     }
     if (!IS_AUTH) {
         return;
     }
     if (check_current_uri('auth/logout')) {
         return;
     }
     if (Site_Util::check_error_response()) {
         return;
     }
     // Force register email.
     if (conf('member.setting.email.forceRegister.isEnabled') && !check_current_uris(conf('member.setting.email.forceRegister.accessableUri')) && empty($this->u->member_auth->email)) {
         Session::set_flash('message', sprintf('%sが%sです。%sしてください。', term('site.email'), term('site.unregisterd'), term('site.registration')));
         Response::redirect('member/setting/email/regist');
     }
     // Force register required profiles.
     if (conf('member.profile.forceRegisterRequired.isEnabled') && !check_current_uris(conf('member.profile.forceRegisterRequired.accessableUri')) && !Site_Member::check_saved_member_profile_required($this->u)) {
         Session::set_flash('message', sprintf('%sの%sがあります。%sしてください。', term('site.unregisterd'), term('profile'), term('site.registration')));
         Response::redirect('member/profile/edit/regist');
     }
 }
Beispiel #10
0
<body><?php 
}
if (!$list) {
    if (!IS_API) {
        echo term('album');
        ?>
がありません。<?php 
    }
} else {
    ?>
<div class="row">
<div id="image_list">
<?php 
    foreach ($list as $album) {
        if (empty($before_album_member_id) || $album->member_id != $before_album_member_id) {
            $access_from = \Site_Member::get_access_from_member_relation($album->member_id, \Auth::check() ? $u->id : 0);
        }
        $before_album_member_id = $album->member_id;
        ?>
	<div class="js-hide-btn image_item" id="image_item_<?php 
        echo $album->id;
        ?>
" data-hidden_btn="btn_dropdown_<?php 
        echo $album->id;
        ?>
">
		<div class="imgBox" id="imgBox_<?php 
        echo $album->id;
        ?>
">
			<div class="content"><?php 
Beispiel #11
0
/**
 * Return member name for view
 * 
 * @param   Mixed   $member                Model_Member object or null
 * @param   Mixed   $link_to               false not to link / 'member' or true to link to member page / 'profile' to link to profile page
 * @param   Boolean $with_additional_info  Add result of Site_Member::get_screen_name_additional_info
 * @return  String
 * @access  public
 */
function member_name($member, $link_to = false, $with_additional_info = false)
{
    if (empty($member)) {
        return term('member.left');
    }
    if (!empty($member->name)) {
        $name = $member->name;
    } else {
        $name = 'ID:' . $member->id;
    }
    // for link
    if ($link_to === true || $link_to == 'member') {
        $name = Html::anchor('member/' . $member->id, $name);
    } elseif ($link_to == 'profile') {
        $name = Html::anchor('member/profile/' . $member->id, $name);
    } elseif ($link_to) {
        $name = Html::anchor($link_to, $name);
    }
    if (!$with_additional_info) {
        return $name;
    }
    if (!($additional_info = Site_Member::get_screen_name_additional_info($member->id))) {
        return $name;
    }
    return $name . ' ' . $additional_info;
}
Beispiel #12
0
 protected function save_profile_image($provider, $image_url, $member_obj)
 {
     $image_url = $this->get_profile_image_url($provider, $image_url);
     $save_file_path_tmp = sprintf('%stmp/%s_%s_%s', APPPATH, $member_obj->id, Util_string::get_unique_id(), time());
     Site_Upload::save_image_from_url($image_url, $save_file_path_tmp, conf('upload.types.img.types.m.max_size', null, 0));
     \DB::start_transaction();
     Site_Member::save_profile_image($member_obj, $save_file_path_tmp, false);
     \DB::commit_transaction();
 }