?>
<!--#Meta:widgets/login_info/skins/default/default.login.js--><?php 
$__tmp = array('widgets/login_info/skins/default/default.login.js', '', '', '');
Context::loadFile($__tmp);
unset($__tmp);
?>
<div class="account">
	<ul class="info">
		<li><a href="<?php 
echo getUrl('act', 'dispMemberInfo', 'member_srl', '');
?>
" title="<?php 
echo $__Context->lang->last_login;
?>
: <?php 
echo zDate($__Context->logged_info->last_login, "Y-m-d");
?>
" class="user"><?php 
echo $__Context->logged_info->nick_name;
?>
</a></li>
		<?php 
if ($__Context->logged_info->is_admin == 'Y') {
    ?>
<li>
			<a href="<?php 
    echo getUrl('', 'module', 'admin');
    ?>
" title="<?php 
    echo $__Context->lang->admin;
    ?>
Ejemplo n.º 2
0
 function dispAttendanceAdminList()
 {
     /*attendance model 객체 생성*/
     $oAttendanceModel = getModel('attendance');
     Context::set('Model', $oAttendanceModel);
     $selected_date = Context::get('selected_date');
     //선택한 날짜 받아오기
     $type = Context::get('type');
     /*attendance admin model 객체 생성*/
     $oAttendanceAdminModel = getAdminModel('attendance');
     Context::set('oAttendanceAdminModel', $oAttendanceAdminModel);
     if ($type != 'config' && $type != 'time') {
         $user_data = $oAttendanceAdminModel->getAttendanceMemberList(20, $type);
         Context::set('user_data', $user_data);
     }
     // 멤버모델 객체 생성
     $oMemberModel = getModel('member');
     $group_list = $oMemberModel->getGroups();
     Context::set('group_list', $group_list);
     /*날짜 관련*/
     if (!$selected_date) {
         $selected_date = zDate(date('YmdHis'), "Ymd");
     }
     $year = substr($selected_date, 0, 4);
     $month = substr($selected_date, 4, 2);
     $day = substr($selected_date, 6, 2);
     $end_day = date('t', mktime(0, 0, 0, $month, 1, $year));
     $oMemberModel = getModel('member');
     Context::set('end_day', $end_day);
     Context::set('year', $year);
     Context::set('selected', $selected_date);
     Context::set('month', $month);
     Context::set('day', $day);
     Context::set('ipaddress', $_SERVER['REMOTE_ADDR']);
     Context::set('oMemberModel', $oMemberModel);
     //module의 설정값 가져오기
     $oModuleModel = getModel('module');
     $config = $oModuleModel->getModuleConfig('attendance');
     $oModuleAdminModel = getAdminModel('module');
     Context::set('config', $config);
     $start_time = new stdClass();
     $start_time->hour = substr($config->start_time, 0, 2);
     $start_time->min = substr($config->start_time, 2, 2);
     $end_time = new stdClass();
     $end_time->hour = substr($config->end_time, 0, 2);
     $end_time->min = substr($config->end_time, 2, 2);
     Context::set('start_time', $start_time);
     Context::set('end_time', $end_time);
     // 스킨 목록을 구해옴
     $oModuleModel = getModel('module');
     $module_info = $oModuleModel->getModuleInfoByMid('attendance');
     $skin_list = $oModuleModel->getSkins($this->module_path);
     Context::set('skin_list', $skin_list);
     $mskin_list = $oModuleModel->getSkins($this->module_path, "m.skins");
     Context::set('mskin_list', $mskin_list);
     // 레이아웃 목록을 구해옴
     $oLayoutModel = getModel('layout');
     $layout_list = $oLayoutModel->getLayoutList();
     Context::set('layout_list', $layout_list);
     $mobile_layout_list = $oLayoutModel->getLayoutList(0, "M");
     Context::set('mlayout_list', $mobile_layout_list);
     // 모듈 카테고리 목록을 구함
     $module_category = $oModuleModel->getModuleCategories();
     Context::set('module_category', $module_category);
     // 공통 모듈 권한 설정 페이지 호출
     $skin_content = $oModuleAdminModel->getModuleSkinHTML($module_info->module_srl);
     Context::set('skin_content', $skin_content);
     Context::set('module_info', $module_info);
     Context::set('module_srl', $module_info->module_srl);
     // 사용환경정보 전송 확인
     $attendance_module_info = $oModuleModel->getModuleInfoXml('attendance');
     $agreement_file = FileHandler::getRealPath(sprintf('%s%s.txt', './files/cache/attendance/attendance-', $attendance_module_info->version));
     if (file_exists($agreement_file)) {
         $agreement = FileHandler::readFile($agreement_file);
         Context::set('_attendance_env_agreement', $agreement);
         if ($agreement == 'Y') {
             $_attendance_iframe_url = 'http://sosifam.com/index.php?mid=attendance_iframe';
             $_host_info = urlencode($_SERVER['HTTP_HOST']) . '-NC' . $attendance_module_info->version . '-PHP' . phpversion() . '-XE' . __XE_VERSION__;
             Context::set('_attendance_iframe_url', $_attendance_iframe_url . '&_host=' . $_host_info);
             Context::set('attendance_module_info', $attendance_module_info);
         }
     } else {
         Context::set('_attendance_env_agreement', 'NULL');
     }
     /*템플릿 설정*/
     $this->setTemplatePath($this->module_path . 'tpl');
     $this->setTemplateFile('index');
 }
 function procAttendanceAdminInsertAttendance()
 {
     if (date('t', mktime(0, 0, 0, 02, 1, zDate(date('YmdHis'), "Y"))) == 29) {
         $end_of_year = 366;
     } else {
         $end_of_year = 365;
     }
     $end_of_month = date('t', mktime(0, 0, 0, zDate(date('YmdHis'), "m"), 1, zDate(date('YmdHis'), "Y")));
     $oModule = getModel('module');
     $output = $oModule->getModuleConfig('attendance');
     $oModuleController =& getController('module');
     $obj = Context::getRequestVars();
     if ($obj->continuity_day < 2) {
         $obj->continuity_day = 2;
     }
     if ($obj->diligence_yearly >= $end_of_year || $obj->diligence_yearly < 32) {
         $obj->diligence_yearly = $end_of_year - 1;
     }
     if ($obj->diligence_monthly >= $end_of_month || $obj->diligence_monthly < 8) {
         $obj->diligence_monthly = $end_of_month - 1;
     }
     if ($obj->diligence_weekly >= 7 || $obj->diligence_weekly < 1) {
         $obj->diligence_weekly = 6;
     }
     $config = new stdClass();
     $config->about_admin_check = $obj->about_admin_check;
     $config->allow_duplicaton_ip_count = $obj->allow_duplicaton_ip_count;
     $config->about_auto_attend = $obj->about_auto_attend;
     $config->about_birth_day = $obj->about_birth_day;
     $config->about_birth_day_y = $obj->about_birth_day_y;
     $config->about_time_control = $obj->about_time_control;
     $config->start_time = sprintf("%02d%02d", $obj->start_hour, $obj->start_min);
     $config->end_time = sprintf("%02d%02d", $obj->end_hour, $obj->end_min);
     $config->about_diligence_yearly = $obj->about_diligence_yearly;
     $config->diligence_yearly = $obj->diligence_yearly;
     $config->diligence_yearly_point = $obj->diligence_yearly_point;
     $config->about_diligence_monthly = $obj->about_diligence_monthly;
     $config->diligence_monthly = $obj->diligence_monthly;
     $config->diligence_monthly_point = $obj->diligence_monthly_point;
     $config->about_diligence_weekly = $obj->about_diligence_weekly;
     $config->diligence_weekly = $obj->diligence_weekly;
     $config->diligence_weekly_point = $obj->diligence_weekly_point;
     $config->add_point = $obj->add_point;
     $config->first_point = $obj->first_point;
     $config->second_point = $obj->second_point;
     $config->third_point = $obj->third_point;
     $config->yearly_point = $obj->yearly_point;
     $config->monthly_point = $obj->monthly_point;
     $config->weekly_point = $obj->weekly_point;
     $config->about_target = $obj->about_target;
     $config->target_day = $obj->target_day;
     $config->target_point = $obj->target_point;
     $config->about_continuity = $obj->about_continuity;
     $config->continuity_day = $obj->continuity_day;
     $config->continuity_point = $obj->continuity_point;
     $config->about_random = $obj->about_random;
     $config->minimum = $obj->minimum;
     $config->maximum = $obj->maximum;
     $config->about_lottery = $obj->about_lottery;
     $config->lottery = $obj->lottery;
     $config->brithday_point = $obj->brithday_point;
     $config->continuity_monthly = $obj->continuity_monthly;
     $config->use_document = $obj->use_document;
     $config->use_random_sm = $obj->use_random_sm;
     $config->random_small_win = $obj->random_small_win;
     $config->random_small_point_f = $obj->random_small_point_f;
     $config->random_small_point_s = $obj->random_small_point_s;
     $config->random_big_point_f = $obj->random_big_point_f;
     $config->random_big_point_s = $obj->random_big_point_s;
     $config->giftname = $obj->giftname;
     $config->manygiftlist = $obj->manygiftlist;
     $config->gift_random = $obj->gift_random;
     $this->setMessage('success_updated');
     $oModuleController->updateModuleConfig('attendance', $config);
     if (!in_array(Context::getRequestMethod(), array('XMLRPC', 'JSON'))) {
         $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispAttendanceAdminList');
         header('location: ' . $returnUrl);
         return;
     }
 }
Ejemplo n.º 4
0
 /**
  * @brief Auto Attend trigger
  **/
 function triggerAutoAttend($obj)
 {
     $today = zDate(date('YmdHis'), "Ymd");
     $arg = new stdClass();
     $arg->day = $today;
     $arg->member_srl = $obj->member_srl;
     $output = executeQuery('attendance.getIsChecked', $arg);
     if ($output->data->count > 0) {
         $_SESSION['is_attended'] = $today;
         return;
     }
     //module의 설정값 가져오기
     $oModuleModel = getModel('module');
     $config = $oModuleModel->getModuleConfig('attendance');
     if ($config->about_auto_attend == 'yes') {
         $this->insertAttendance('yes', '^auto^', $obj->member_srl);
     }
 }
Ejemplo n.º 5
0
 function dispAttendanceBoard()
 {
     $oModuleModel = getModel('module');
     $oDocumentModel = getModel('document');
     $module_info = $oModuleModel->getModuleInfoByMid('attendance');
     $oModuleModel->syncSkinInfoToModuleInfo($module_info);
     $oAttendanceModel = getModel('attendance');
     $oMemberModel = getModel('member');
     $oAttendanceAdminModel = getAdminModel('attendance');
     //날짜 초기화
     $document_srl = Context::get('document_srl');
     $selected_date = Context::get('selected_date');
     if ($document_srl) {
         $oAttendance = $oAttendanceModel->getGreetingsData("#" . $document_srl);
         $selected_date = substr($oAttendance->regdate, 0, 8);
     }
     if (!$selected_date) {
         $selected_date = zDate(date('YmdHis'), "Ymd");
     }
     $module_info->start_num = $oAttendanceModel->getPositionData($selected_date, "^showall^");
     if (!$module_info->greetings_cut_size) {
         $module_info->greetings_cut_size = 20;
     }
     //module의 설정값 가져오기
     $oModuleModel = getModel('module');
     $config = $oModuleModel->getModuleConfig('attendance');
     //출석가능 시간대인지 판단
     $is_available = $oAttendanceModel->availableCheck($config);
     //오름차순, 내림차순에 따라 출력방법 결정
     if ($module_info->order_type == 'desc') {
         $oAttendance = $oAttendanceModel->getInverseList($module_info->list_count, $selected_date);
     } else {
         $oAttendance = $oAttendanceModel->getAttendanceList($module_info->list_count, $selected_date);
     }
     $logged_info = Context::get('logged_info');
     $args = new stdClass();
     $args->member_srl = $logged_info->member_srl;
     $args->present_y = 'Y';
     $args->today = $selected_date;
     $outputs = executeQuery('attendance.getTodayMyGiftList', $args);
     debugPrint($outputs);
     //출석달력 설정
     $date_info = new stdClass();
     $date_info->_year = substr($selected_date, 0, 4);
     $date_info->_month = substr($selected_date, 4, 2);
     $date_info->_day = substr($selected_date, 6, 2);
     $date_info->day_max = date("t", mktime(0, 0, 0, $date_info->_month, 1, $date_info->_year));
     $date_info->week_start = date("w", mktime(0, 0, 0, $date_info->_month, 1, $date_info->_year));
     Context::set('admin_date_info', $date_info);
     //변수 내보내기
     Context::set('todaymygift', $outputs->data);
     Context::set('selected_date', $selected_date);
     Context::set('is_available', $is_available);
     Context::set('oAttendance', $oAttendance);
     Context::set('oDocumentModel', $oDocumentModel);
     Context::set('oAttendanceAdminModel', $oAttendanceAdminModel);
     Context::set('oAttendanceModel', $oAttendanceModel);
     Context::set('oMemberModel', $oMemberModel);
     Context::set('module_info', $module_info);
     Context::set('config', $config);
     $this->setTemplateFile('index');
 }
		<?php 
}
?>
		<a class="att-btn att-btn-primary" href="<?php 
echo getUrl('document_srl', '', 'selected_date', zDate(date('YmdHis'), 'Ymd'));
?>
"><i class="fa fa-calendar"></i> 이번달</a>
		<?php 
if ($__Context->selected_date == date("Ymd") || !$__Context->is_logged) {
    ?>
			<span class="att-btn att-btn-primary disabled"><font color="#CCCCCC">다음달 <i class="fa fa-angle-double-right"></i></font></span>
		<?php 
} else {
    ?>
			<a class="att-btn att-btn-primary" href="<?php 
    echo getUrl('document_srl', '', 'selected_date', zDate(date('YmdHis', mktime(0, 0, 0, $__Context->month + 1, $__Context->day, $__Context->year)), 'Ymd'));
    ?>
" >
				다음달 <i class="fa fa-angle-double-right"></i>
			</a>
		<?php 
}
?>
	</span>
</div>
	<div class="sat" style="position:relative">
	<table width="100%" class="table table-bordered ">
		<tr>
			<th>출석점수</th>
			<td style="font-weight:bold; color:#F33; text-align:left">
				<?php 
Ejemplo n.º 7
0
 /**
  * @brief 주간 정근 여부 확인
  */
 function checkWeeklyDiligence($member_srl, $diligence_weekly, $today)
 {
     if (!$today) {
         $week = $this->getWeek(zDate(date('YmdHis'), "Ymd"));
     } else {
         $week = $this->getWeek($today);
     }
     $week_data = $this->getWeeklyData($member_srl, $week);
     if ($week_data->weekly) {
         if ($week_data->weekly == $diligence_weekly) {
             return 1;
         }
     } else {
         if ($diligence_weekly == 0) {
             return 1;
         }
     }
     return 0;
 }
            echo $__Context->_day++;
            ?>
</span><?php 
        } else {
            echo $__Context->_day++;
        }
        ?>
</span>
				<?php 
    } else {
        ?>
					<?php 
        if ($__Context->logged_info->is_admin == 'Y' || $__Context->checked == 1 && $__Context->is_logged) {
            ?>
						<a href="<?php 
            echo getUrl('document_srl', '', 'selected_date', zDate(date('YmdHis', mktime(0, 0, 0, $__Context->admin_date_info->_month, $__Context->_day, $__Context->admin_date_info->_year)), 'Ymd'));
            ?>
">
					<?php 
        }
        ?>
					<span<?php 
        if ($__Context->j % 7 == 1) {
            ?>
 class="sunday"<?php 
        }
        if ($__Context->j % 7 == 0) {
            ?>
 class="saturday"<?php 
        }
        ?>
Ejemplo n.º 9
0
 /**
  * @brief 회원 목록을 구함
  **/
 function getAttendanceMemberList($list, $new_type)
 {
     /*attendance model 객체 생성*/
     $oAttendanceModel = getModel('attendance');
     // 검색 옵션 정리
     $args = new stdClass();
     $args->is_admin = Context::get('is_admin') == 'Y' ? 'Y' : '';
     $args->is_denied = Context::get('is_denied') == 'Y' ? 'Y' : '';
     $args->selected_group_srl = Context::get('selected_group_srl');
     $args->unjoined_members = Context::get('unjoined_members') == 'Y' ? 'Y' : '';
     $type = $new_type;
     if (!$type) {
         $type = Context::get('type');
     }
     $args->year = substr(Context::get('selected_date'), 0, 4);
     $args->year_month = substr(Context::get('selected_date'), 0, 6);
     $week = $oAttendanceModel->getWeek(Context::get('selected_date'));
     $args->monday = $week->monday;
     $args->sunday = $week->sunday;
     //날짜정보가 없으면 오늘로 초기화
     if (!$args->year) {
         $args->year = zDate(date('YmdHis'), "Y");
     }
     if (!$args->year_month) {
         $args->year_month = zDate(date('YmdHis'), "Ym");
     }
     if (!$week->monday || !$week->sunday) {
         $week = $oAttendanceModel->getWeek(zDate(date('YmdHis'), "Ymd"));
         $args->monday = $week->monday;
         $args->sunday = $week->sunday;
     }
     $search_target = trim(Context::get('search_target'));
     $search_keyword = trim(Context::get('search_keyword'));
     if ($search_target && $search_keyword) {
         switch ($search_target) {
             case 'user_id':
                 if ($search_keyword) {
                     $search_keyword = str_replace(' ', '%', $search_keyword);
                 }
                 $args->s_user_id = $search_keyword;
                 break;
             case 'user_name':
                 if ($search_keyword) {
                     $search_keyword = str_replace(' ', '%', $search_keyword);
                 }
                 $args->s_user_name = $search_keyword;
                 break;
             case 'nick_name':
                 if ($search_keyword) {
                     $search_keyword = str_replace(' ', '%', $search_keyword);
                 }
                 $args->s_nick_name = $search_keyword;
                 break;
             case 'email_address':
                 if ($search_keyword) {
                     $search_keyword = str_replace(' ', '%', $search_keyword);
                 }
                 $args->s_email_address = $search_keyword;
                 break;
             case 'regdate':
                 $args->s_regdate = preg_replace("/[^0-9]/", "", $search_keyword);
                 break;
             case 'regdate_more':
                 $args->s_regdate_more = substr(preg_replace("/[^0-9]/", "", $search_keyword) . '00000000000000', 0, 14);
                 break;
             case 'regdate_less':
                 $args->s_regdate_less = substr(preg_replace("/[^0-9]/", "", $search_keyword) . '00000000000000', 0, 14);
                 break;
             case 'last_login':
                 $args->s_last_login = $search_keyword;
                 break;
             case 'last_login_more':
                 $args->s_last_login_more = substr(preg_replace("/[^0-9]/", "", $search_keyword) . '00000000000000', 0, 14);
                 break;
             case 'last_login_less':
                 $args->s_last_login_less = substr(preg_replace("/[^0-9]/", "", $search_keyword) . '00000000000000', 0, 14);
                 break;
             case 'extra_vars':
                 $args->s_extra_vars = preg_replace("/[^0-9]/", "", $search_keyword);
                 break;
         }
     }
     if ($type == 'day' || $type == 'speed_search') {
         // selected_group_srl이 있으면 query id를 변경 (table join때문에)
         if ($args->selected_group_srl) {
             $query_id = 'member.getMemberListWithinGroup';
             $args->sort_index = "member.member_srl";
             $args->sort_order = "desc";
         } else {
             $query_id = 'member.getMemberList';
             $args->sort_index = "member_srl";
             $args->sort_order = "desc";
         }
     } else {
         if ($type == 'rank_total') {
             // selected_group_srl이 있으면 query id를 변경 (table join때문에)
             if ($args->selected_group_srl) {
                 $query_id = 'attendance.getMemberListWithinGroup';
                 $args->sort_index = "attendance_total.total";
             } else {
                 $query_id = 'attendance.getMemberList';
                 $args->sort_index = "attendance_total.total";
             }
             //탈퇴한 회원 정보 찾기 위한 쿼리 수정
             if ($args->unjoined_members) {
                 $query_id = 'attendance.getUnJoinedMemberList';
                 $args->sort_index = 'attendance_total.total';
             }
         } else {
             if ($type == 'rank_yearly') {
                 // selected_group_srl이 있으면 query id를 변경 (table join때문에)
                 if ($args->selected_group_srl) {
                     $query_id = 'attendance.getMemberListWithinGroupYearly';
                     $args->sort_index = "attendance_yearly.yearly";
                 } else {
                     $query_id = 'attendance.getMemberListYearly';
                     $args->sort_index = "attendance_yearly.yearly";
                 }
                 //탈퇴한 회원 정보 찾기 위한 쿼리 수정
                 if ($args->unjoined_members) {
                     $query_id = 'attendance.getUnJoinedMemberListYearly';
                     $args->sort_index = 'attendance_yearly.yearly';
                 }
             } else {
                 if ($type == 'rank_monthly') {
                     // selected_group_srl이 있으면 query id를 변경 (table join때문에)
                     if ($args->selected_group_srl) {
                         $query_id = 'attendance.getMemberListWithinGroupMonthly';
                         $args->sort_index = "attendance_monthly.monthly";
                     } else {
                         $query_id = 'attendance.getMemberListMonthly';
                         $args->sort_index = "attendance_monthly.monthly";
                     }
                     //탈퇴한 회원 정보 찾기 위한 쿼리 수정
                     if ($args->unjoined_members) {
                         $query_id = 'attendance.getUnJoinedMemberListMonthly';
                         $args->sort_index = 'attendance_monthly.monthly';
                     }
                 } else {
                     if ($type == 'rank_weekly') {
                         // selected_group_srl이 있으면 query id를 변경 (table join때문에)
                         if ($args->selected_group_srl) {
                             $query_id = 'attendance.getMemberListWithinGroupWeekly';
                             $args->sort_index = "attendance_weekly.weekly";
                         } else {
                             $query_id = 'attendance.getMemberListWeekly';
                             $args->sort_index = "attendance_weekly.weekly";
                         }
                         //탈퇴한 회원 정보 찾기 위한 쿼리 수정
                         if ($args->unjoined_members) {
                             $query_id = 'attendance.getUnJoinedMemberListWeekly';
                             $args->sort_index = 'attendance_weekly.weekly';
                         }
                     }
                 }
             }
         }
     }
     // 기타 변수들 정리
     $args->page = Context::get('page');
     $args->list_count = $list;
     $args->page_count = 10;
     return executeQuery($query_id, $args);
 }