/**
* REST API: WP_REST_Widget_Types_Controller class
*
* @package WordPress
* @subpackage REST_API
* @since 5.8.0
*/
/**
* Core class to access widget types via the REST API.
*
* @since 5.8.0
*
* @see WP_REST_Controller
*/
class WP_REST_Widget_Types_Controller extends WP_REST_Controller {
/**
* Constructor.
*
* @since 5.8.0
*/
public function __construct() {
$this->namespace = 'wp/v2';
$this->rest_base = 'widget-types';
}
/**
* Registers the widget type routes.
*
* @since 5.8.0
*
* @see register_rest_route()
*/
public function register_routes() {
register_rest_route(
$this->namespace,
'/' . $this->rest_base,
array(
array(
'methods' => WP_REST_Server::READABLE,
'callback' => array( $this, 'get_items' ),
'permission_callback' => array( $this, 'get_items_permissions_check' ),
'args' => $this->get_collection_params(),
),
'schema' => array( $this, 'get_public_item_schema' ),
)
);
register_rest_route(
$this->namespace,
'/' . $this->rest_base . '/(?P[a-zA-Z0-9_-]+)',
array(
'args' => array(
'id' => array(
'description' => __( 'The widget type id.' ),
'type' => 'string',
),
),
array(
'methods' => WP_REST_Server::READABLE,
'callback' => array( $this, 'get_item' ),
'permission_callback' => array( $this, 'get_item_permissions_check' ),
'args' => $this->get_collection_params(),
),
'schema' => array( $this, 'get_public_item_schema' ),
)
);
register_rest_route(
$this->namespace,
'/' . $this->rest_base . '/(?P[a-zA-Z0-9_-]+)/encode',
array(
'args' => array(
'id' => array(
'description' => __( 'The widget type id.' ),
'type' => 'string',
'required' => true,
),
'instance' => array(
'description' => __( 'Current instance settings of the widget.' ),
'type' => 'object',
),
'form_data' => array(
'description' => __( 'Serialized widget form data to encode into instance settings.' ),
'type' => 'string',
'sanitize_callback' => function( $string ) {
$array = array();
wp_parse_str( $string, $array );
return $array;
},
),
),
array(
'methods' => WP_REST_Server::CREATABLE,
'permission_callback' => array( $this, 'get_item_permissions_check' ),
'callback' => array( $this, 'encode_form_data' ),
),
)
);
}
/**
* Checks whether a given request has permission to read widget types.
*
* @since 5.8.0
*
* @param WP_REST_Request $request Full details about the request.
* @return true|WP_Error True if the request has read access, WP_Error object otherwise.
*/
public function get_items_permissions_check( $request ) {
return $this->check_read_permission();
}
/**
* Retrieves the list of all widget types.
*
* @since 5.8.0
*
* @param WP_REST_Request $request Full details about the request.
* @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
*/
public function get_items( $request ) {
$data = array();
foreach ( $this->get_widgets() as $widget ) {
$widget_type = $this->prepare_item_for_response( $widget, $request );
$data[] = $this->prepare_response_for_collection( $widget_type );
}
return rest_ensure_response( $data );
}
/**
* Checks if a given request has access to read a widget type.
*
* @since 5.8.0
*
* @param WP_REST_Request $request Full details about the request.
* @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise.
*/
public function get_item_permissions_check( $request ) {
$check = $this->check_read_permission();
if ( is_wp_error( $check ) ) {
return $check;
}
$widget_id = $request['id'];
$widget_type = $this->get_widget( $widget_id );
if ( is_wp_error( $widget_type ) ) {
return $widget_type;
}
return true;
}
/**
* Checks whether the user can read widget types.
*
* @since 5.8.0
*
* @return true|WP_Error True if the widget type is visible, WP_Error otherwise.
*/
protected function check_read_permission() {
if ( ! current_user_can( 'edit_theme_options' ) ) {
return new WP_Error(
'rest_cannot_manage_widgets',
__( 'Sorry, you are not allowed to manage widgets on this site.' ),
array(
'status' => rest_authorization_required_code(),
)
);
}
return true;
}
/**
* Gets the details about the requested widget.
*
* @since 5.8.0
*
* @param string $id The widget type id.
* @return array|WP_Error The array of widget data if the name is valid, WP_Error otherwise.
*/
public function get_widget( $id ) {
foreach ( $this->get_widgets() as $widget ) {
if ( $id === $widget['id'] ) {
return $widget;
}
}
return new WP_Error( 'rest_widget_type_invalid', __( 'Invalid widget type.' ), array( 'status' => 404 ) );
}
/**
* Normalize array of widgets.
*
* @since 5.8.0
*
* @global WP_Widget_Factory $wp_widget_factory
* @global array $wp_registered_widgets The list of registered widgets.
*
* @return array Array of widgets.
*/
protected function get_widgets() {
global $wp_widget_factory, $wp_registered_widgets;
$widgets = array();
foreach ( $wp_registered_widgets as $widget ) {
$parsed_id = wp_parse_widget_id( $widget['id'] );
$widget_object = $wp_widget_factory->get_widget_object( $parsed_id['id_base'] );
$widget['id'] = $parsed_id['id_base'];
$widget['is_multi'] = (bool) $widget_object;
if ( isset( $widget['name'] ) ) {
$widget['name'] = html_entity_decode( $widget['name'], ENT_QUOTES, get_bloginfo( 'charset' ) );
}
if ( isset( $widget['description'] ) ) {
$widget['description'] = html_entity_decode( $widget['description'], ENT_QUOTES, get_bloginfo( 'charset' ) );
}
unset( $widget['callback'] );
$classname = '';
foreach ( (array) $widget['classname'] as $cn ) {
if ( is_string( $cn ) ) {
$classname .= '_' . $cn;
} elseif ( is_object( $cn ) ) {
$classname .= '_' . get_class( $cn );
}
}
$widget['classname'] = ltrim( $classname, '_' );
$widgets[ $widget['id'] ] = $widget;
}
return $widgets;
}
/**
* Retrieves a single widget type from the collection.
*
* @since 5.8.0
*
* @param WP_REST_Request $request Full details about the request.
* @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
*/
public function get_item( $request ) {
$widget_id = $request['id'];
$widget_type = $this->get_widget( $widget_id );
if ( is_wp_error( $widget_type ) ) {
return $widget_type;
}
$data = $this->prepare_item_for_response( $widget_type, $request );
return rest_ensure_response( $data );
}
/**
* Prepares a widget type object for serialization.
*
* @since 5.8.0
*
* @param array $widget_type Widget type data.
* @param WP_REST_Request $request Full details about the request.
* @return WP_REST_Response Widget type data.
*/
public function prepare_item_for_response( $widget_type, $request ) {
$fields = $this->get_fields_for_response( $request );
$data = array(
'id' => $widget_type['id'],
);
$schema = $this->get_item_schema();
$extra_fields = array(
'name',
'description',
'is_multi',
'classname',
'widget_class',
'option_name',
'customize_selective_refresh',
);
foreach ( $extra_fields as $extra_field ) {
if ( ! rest_is_field_included( $extra_field, $fields ) ) {
continue;
}
if ( isset( $widget_type[ $extra_field ] ) ) {
$field = $widget_type[ $extra_field ];
} elseif ( array_key_exists( 'default', $schema['properties'][ $extra_field ] ) ) {
$field = $schema['properties'][ $extra_field ]['default'];
} else {
$field = '';
}
$data[ $extra_field ] = rest_sanitize_value_from_schema( $field, $schema['properties'][ $extra_field ] );
}
$context = ! empty( $request['context'] ) ? $request['context'] : 'view';
$data = $this->add_additional_fields_to_object( $data, $request );
$data = $this->filter_response_by_context( $data, $context );
$response = rest_ensure_response( $data );
$response->add_links( $this->prepare_links( $widget_type ) );
/**
* Filters the REST API response for a widget type.
*
* @since 5.8.0
*
* @param WP_REST_Response $response The response object.
* @param array $widget_type The array of widget data.
* @param WP_REST_Request $request The request object.
*/
return apply_filters( 'rest_prepare_widget_type', $response, $widget_type, $request );
}
/**
* Prepares links for the widget type.
*
* @since 5.8.0
*
* @param array $widget_type Widget type data.
* @return array Links for the given widget type.
*/
protected function prepare_links( $widget_type ) {
return array(
'collection' => array(
'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ),
),
'self' => array(
'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $widget_type['id'] ) ),
),
);
}
/**
* Retrieves the widget type's schema, conforming to JSON Schema.
*
* @since 5.8.0
*
* @return array Item schema data.
*/
public function get_item_schema() {
if ( $this->schema ) {
return $this->add_additional_fields_schema( $this->schema );
}
$schema = array(
'$schema' => 'http://json-schema.org/draft-04/schema#',
'title' => 'widget-type',
'type' => 'object',
'properties' => array(
'id' => array(
'description' => __( 'Unique slug identifying the widget type.' ),
'type' => 'string',
'context' => array( 'embed', 'view', 'edit' ),
'readonly' => true,
),
'name' => array(
'description' => __( 'Human-readable name identifying the widget type.' ),
'type' => 'string',
'default' => '',
'context' => array( 'embed', 'view', 'edit' ),
'readonly' => true,
),
'description' => array(
'description' => __( 'Description of the widget.' ),
'type' => 'string',
'default' => '',
'context' => array( 'view', 'edit', 'embed' ),
),
'is_multi' => array(
'description' => __( 'Whether the widget supports multiple instances' ),
'type' => 'boolean',
'context' => array( 'view', 'edit', 'embed' ),
'readonly' => true,
),
'classname' => array(
'description' => __( 'Class name' ),
'type' => 'string',
'default' => '',
'context' => array( 'embed', 'view', 'edit' ),
'readonly' => true,
),
),
);
$this->schema = $schema;
return $this->add_additional_fields_schema( $this->schema );
}
/**
* An RPC-style endpoint which can be used by clients to turn user input in
* a widget admin form into an encoded instance object.
*
* Accepts:
*
* - id: A widget type ID.
* - instance: A widget's encoded instance object. Optional.
* - form_data: Form data from submitting a widget's admin form. Optional.
*
* Returns:
* - instance: The encoded instance object after updating the widget with
* the given form data.
* - form: The widget's admin form after updating the widget with the
* given form data.
*
* @since 5.8.0
*
* @global WP_Widget_Factory $wp_widget_factory
*
* @param WP_REST_Request $request Full details about the request.
* @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure.
*/
public function encode_form_data( $request ) {
global $wp_widget_factory;
$id = $request['id'];
$widget_object = $wp_widget_factory->get_widget_object( $id );
if ( ! $widget_object ) {
return new WP_Error(
'rest_invalid_widget',
__( 'Cannot preview a widget that does not extend WP_Widget.' ),
array( 'status' => 400 )
);
}
// Set the widget's number so that the id attributes in the HTML that we
// return are predictable.
if ( isset( $request['number'] ) && is_numeric( $request['number'] ) ) {
$widget_object->_set( (int) $request['number'] );
} else {
$widget_object->_set( -1 );
}
if ( isset( $request['instance']['encoded'], $request['instance']['hash'] ) ) {
$serialized_instance = base64_decode( $request['instance']['encoded'] );
if ( ! hash_equals( wp_hash( $serialized_instance ), $request['instance']['hash'] ) ) {
return new WP_Error(
'rest_invalid_widget',
__( 'The provided instance is malformed.' ),
array( 'status' => 400 )
);
}
$instance = unserialize( $serialized_instance );
} else {
$instance = array();
}
if (
isset( $request['form_data'][ "widget-$id" ] ) &&
is_array( $request['form_data'][ "widget-$id" ] )
) {
$new_instance = array_values( $request['form_data'][ "widget-$id" ] )[0];
$old_instance = $instance;
$instance = $widget_object->update( $new_instance, $old_instance );
/** This filter is documented in wp-includes/class-wp-widget.php */
$instance = apply_filters(
'widget_update_callback',
$instance,
$new_instance,
$old_instance,
$widget_object
);
}
$serialized_instance = serialize( $instance );
$widget_key = $wp_widget_factory->get_widget_key( $id );
$response = array(
'form' => trim(
$this->get_widget_form(
$widget_object,
$instance
)
),
'preview' => trim(
$this->get_widget_preview(
$widget_key,
$instance
)
),
'instance' => array(
'encoded' => base64_encode( $serialized_instance ),
'hash' => wp_hash( $serialized_instance ),
),
);
if ( ! empty( $widget_object->widget_options['show_instance_in_rest'] ) ) {
// Use new stdClass so that JSON result is {} and not [].
$response['instance']['raw'] = empty( $instance ) ? new stdClass : $instance;
}
return rest_ensure_response( $response );
}
/**
* Returns the output of WP_Widget::widget() when called with the provided
* instance. Used by encode_form_data() to preview a widget.
* @since 5.8.0
*
* @param string $widget The widget's PHP class name (see class-wp-widget.php).
* @param array $instance Widget instance settings.
* @return string
*/
private function get_widget_preview( $widget, $instance ) {
ob_start();
the_widget( $widget, $instance );
return ob_get_clean();
}
/**
* Returns the output of WP_Widget::form() when called with the provided
* instance. Used by encode_form_data() to preview a widget's form.
*
* @since 5.8.0
*
* @param WP_Widget $widget_object Widget object to call widget() on.
* @param array $instance Widget instance settings.
* @return string
*/
private function get_widget_form( $widget_object, $instance ) {
ob_start();
/** This filter is documented in wp-includes/class-wp-widget.php */
$instance = apply_filters(
'widget_form_callback',
$instance,
$widget_object
);
if ( false !== $instance ) {
$return = $widget_object->form( $instance );
/** This filter is documented in wp-includes/class-wp-widget.php */
do_action_ref_array(
'in_widget_form',
array( &$widget_object, &$return, $instance )
);
}
return ob_get_clean();
}
/**
* Retrieves the query params for collections.
*
* @since 5.8.0
*
* @return array Collection parameters.
*/
public function get_collection_params() {
return array(
'context' => $this->get_context_param( array( 'default' => 'view' ) ),
);
}
}
공지사항 – 재중한인과학기술자협회
http://kseach.org/ksc
Welcome to KSEACHTue, 04 Jan 2022 02:04:05 +0000ko-KR
hourly
1 https://wordpress.org/?v=5.8.10http://kseach.org/ksc/wp-content/uploads/2016/04/cropped-logo512-32x32.png공지사항 – 재중한인과학기술자협회
http://kseach.org/ksc
3232한국과학기술단체총연합회 재외한인과학기술자협회에 재중과협 준회원으로 가입
http://kseach.org/ksc/archives/1732
http://kseach.org/ksc/archives/1732#respondTue, 04 Jan 2022 02:03:09 +0000http://kseach.org/ksc/?p=1732한국과학기술단체총연합회 재외한인과학기술자협회에 재중과협 준회원으로 가입
올해 (2021년) 12월 15일, 재중과협은 한국과학기술단체총연합회(과총)에서 운영/지원하는 재외한인과학기술자협회에 19번째 국가로 준회원으로 가입되었다. 과총은 1966년 창립하여 우리나라 과학기술의 전 분야 학회, 국공립연구소, 기업연구소 등 600여개 단체를 회원으로 두고 있으며 미국 등 전 세계19개 지역에 재외한인과학기술자협회와 13개 지역연합회를 지원하고 있다. 재외과협의 주요사업으로는 기본(회원관리 등)/특별사업(국가별 특화사업 등), 재외한인과학기술학술대회 개최, 한민족청년과학도포럼(YGF)/차세대 과학기술리 더 포럼(YPF) 개최, 차세대 과학기술리더지원사업, 해외유관기관과의 협력사업 등을 추진하고 있다.
이번 재중과협의 과총 준회원 가입은 과협이 중국 내의 한인 과학기술자를 대표하는 명실상부한 조직임을 인정받았다는데 의미를 둘 수 있다.
* 참조 : 재외과협 현황(19개)
재외과협명
창립일
소재지
회장
회원수
재미한인과학기술자협회
71.12.11.
Vienna. VA
U. S. A
박병규
7,148명
재독한국과학기술자협회
73.05.06.
Bochum
Germany
배동운
920명
재영한인과학기술자협회
74.11.01.
Surrey
U.K.
임성우
700명
프랑스한인과학기술협회
76.01.31.
Paris
France
김준범
258명
재일한국과학기술자협회
83.10.22.
Tokyo
Japan
홍정국
3,000명
캐나다한인과학기술자협회
86.11.29.
Ontario
Canada
김일용
3,000명
중국조선족과학기술자협회
89.07.21.
Yanji City
China
리동호
2,500명
재러시아한인과학기술자협회
91.07.08.
Moscow
Russia
조광춘
380명
카자흐스탄한국과학기술자협회
91.07.08.
Almaty
Kazakhstan
문그리고리
580명
우즈베키스탄한국과학기술자협회
91.07.08.
Tashkent
Uzbekistan
박밸러리
672명
재오스트리아한인과학기술자협회
98.09.16.
Vienna
Austria
한만욱
110명
재호주·뉴질랜드한인과학기술학술협회
09.12.05.
WA
Australia
이미경
210명
스칸디나비아한인과학기술자협회
15.03.07.
Oslo
Norway
신윤섭
198명
네덜란드한인과학기술자협회
12.02.25.
Amsterdam
Netherlands
박정수
195명
재싱가포르한인과학기술자협회
13.02.16.
Singapore
Singapore
조남준
143명
재핀란드한인과학기술인협회
10.12.17.
Helsinki
Finland
권혁남 (직무대행)
121명
재스위스한인과학기술자협회
12.02.25.
Geneva
Switzerland
최영한
109명
재벨기에한인과학기술자협회
14.11.29.
Liege
Belgium
오근상
75명
재중한인과학기술자협회
15.12.05
Beijing
China
김기환
160명
계
20,479명
(2021. 12 현재)
]]>
http://kseach.org/ksc/archives/1732/feed02021년 춘계학술대회
http://kseach.org/ksc/archives/1567
http://kseach.org/ksc/archives/1567#respondThu, 27 May 2021 07:10:37 +0000http://kseach.org/ksc/?p=1567재중과협 회원 여러분 안녕하십니까.
작년 및 올해는 COVID-19으로 인해 우리 모두 어렵고 힘든 시기를 보내고 있습니다. 무엇보다 재중과협 모임을 예년처럼 진행하지 못해서 안타까운 한해였습니다. 하지만 많은 회원들의 관심과 노력에 힘 입어 이번에 2021 춘계학술대회를 개최하게 되었습니다. 이번 학술대회는 “비대면 시대에 따른 과학기술 교류의 변화”라는 주제로 한국의 저명한 교수님들과 중국내 활동을 시작하고 있는 젊은 연구자들의 발표로 진행됩니다. 재중한인과학기술자의 밝은 미래를 지향하는 협회가 되기를 염원하면서 회원 여러분의 많은 참여로 이번에도 열린 지식과 열린 마음으로 세대와 공간을 초월할 수 있는 의미 있는 학술교류의 장이 되기를 기대합니다.
재중한인과학기술자협회 전임회장 김기환
시간 :2021 년 6 월 5 일(토) 오후 2:00 (북경 시간)
장소 :Crowne Plaza Beijing Zhongguancun (北京中关村皇冠假日酒店) (地址: 北京市海淀区知春路 106号)
공동 주최 :재중한인과학기술자협회, KIC 중국(한국혁신센터)
후원 및 협찬기관 :주 중국 대한민국 대사관, 한국과학기술단체총연합회, 한중과학기술협력센터
]]>http://kseach.org/ksc/archives/1567/feed02020년 임시총회 및 학술대회
http://kseach.org/ksc/archives/1458
http://kseach.org/ksc/archives/1458#respondTue, 17 Nov 2020 16:10:21 +0000http://kseach.org/ksc/?p=1458재중과협 회원 여러분 안녕하십니까.
올해는 COVID-19으로 인해 우리 모두 어렵고 힘든 2020년을 보내고 있습니다. 무엇보다 재중과협 모임을 예년처럼 진행하지 못해서 안타까운 한해였습니다. 하지만 많은 회원들의 관심과 노력에 힘 입어 이번에 제6회 총회 및 학술대회를 개최하게 되었습니다. 비록 화상회의로 진행되지만 대신 한국에 계시는 명망있는 학자 여러 분들을 모실 수 있는 좋은 계기가 되었습니다. 이번 학술대회는 한국의 저명한 교수님들과 중국내 활동을 시작하고 있는 젊은 연구자들의 만남을 주제로 여러분들을 모십니다. 재중한인과학기술자의 밝은 미래를 지향하는 협회가 되기를 염원하면서 회원 여러분의 많은 참여로 이번에도 열린 지식과 열린 마음으로 세대와 공간을 초월할 수 있는 의미 있는 학술교류의 장이 되기를 기대합니다.
재중한인과학기술자협회 전임회장 이우근
시간 :2020 년 12 월 5 일(토) 오후 2:00 (북경 시간)
장소 :화상회의 (자세한 온라인 정보는 추후 통지)
후원 및 협찬기관 :주 중국 대한민국 대사관, 한중과학기술협력센터, 한국혁신센터(KIC중국)
]]>http://kseach.org/ksc/archives/1458/feed02019년 총회 및 학술대회 초대 및 안내
http://kseach.org/ksc/archives/1192
http://kseach.org/ksc/archives/1192#respondWed, 27 Nov 2019 03:27:42 +0000http://kseach.org/ksc/?p=1192재중과협 회원 여러분께,
회원 여러분 안녕하십니까.
2019 총회 및 학술대회는‘중국 과학기술 R&D의 특수성과 글로벌 학술교류 발전 방향’에 관한 토론세션과 전문 분야 연구자들의 기조강연 및 초청강연으로 여러분들을 모십니다. 우리 연구인들의 열린 지식과 열린 마음으로 다시한번 의미있는 학술의 장이 되기를 기대합니다.
회원 여러분의 많은 참여와 관심 부탁드립니다.
재중한인과학기술자협회 회장 이우근
시간 :2019 년 11 월 30 일(토) 오전 10:00
장소 :Crowne Plaza Sun Palace Hotel (新云南皇冠假日酒店) (地址: 北京市朝阳区东北三环七圣中街12号云南大厦, Tel: 010-62498888)
후원 및 협찬기관 :주 중국 대한민국대사관, 한국과학기술단체총연합회, 한중 과기협력 센터, SK 하이닉스, 중국삼성
]]>http://kseach.org/ksc/archives/1192/feed02019년 춘계학술대회 초대 및 안내
http://kseach.org/ksc/archives/905
http://kseach.org/ksc/archives/905#respondFri, 29 Mar 2019 03:14:02 +0000http://kseach.org/ksc/?p=905재중과협 회원 여러분께,
회원 여러분 안녕하십니까.
갈수록 다양해지고 복잡해지는 한중 양국 관계에서 재중 한인 과학기술자들의 네트워킹과 학문적 융합은 앞으로 한중간 학술 교류 분야에서 중요한 역할을 하리라 생각됩니다. 이번 춘계학술대회는‘중국내 이공계 한인연구자들의 육성방안’에 관한 토론세션과 전문 분야 연구자들의 초청강연으로 여러분들을 모십니다. 우리 연구인들의 열린 지식과 열린 마음으로 다시한번 의미있는 학술의 장이 되기를 기대합니다.
]]>http://kseach.org/ksc/archives/905/feed0신임 임원공지
http://kseach.org/ksc/archives/852
http://kseach.org/ksc/archives/852#respondWed, 23 Jan 2019 16:31:45 +0000http://kseach.org/ksc/?p=852재중 한인 과학기술자 협회 회원님들께,
안녕하십니까. 2019년에도 건승하시고 좋은 연구 성과 이루시기를 빕니다.
작년 춘계/추계 학술대회 및 총회는 여러분들의 많은 협조와 참여 아래 성공리에 마쳤습니다.
2019년 임원진에 약간의 변화가 있어서 알려 드립니다. 현재 공석으로 있는 홍보이사를 상하이과기대의 김종명교수님께서 맡아 주시기로 했습니다. 그리고, 최근 심양건축대학로 옮기신 김준봉교수님을 대신해서 북경교통대 원상철교수님께서 수도권지부장을 해 주시기로 하셨고 원래 재무이사는 칭화대의 정애라박사께서 맡기로 하였습니다.
아울러 지난 총회때 현 정관에 없는 학생회원직을 신설하여 앞으로 이공계 학부생들도 학생회원으로 받기로 평의원회에서 결정하고 지난 총회때 투표로 가결되었습니다. 참고로 학생회원은 재미과협등 다른 해외과협도 받고 있습니다.
올해도 더욱 커가는 재중과협을 기대하고 새 임원진과 함께 열심히 노력하겠습니다.
감사합니다.
이우근 드림
]]>http://kseach.org/ksc/archives/852/feed0재중한인과학기술자협회 2018 총회 및 학술대회 안내
http://kseach.org/ksc/archives/783
http://kseach.org/ksc/archives/783#respondSat, 17 Nov 2018 15:08:34 +0000http://kseach.org/ksc/?p=783
안녕하십니까.
저희 재중한인과학기술자협회는 중국내외 여러 한인 과학기술자 분들의 관심과 참여아래 꾸준히 성장하고 있습니다. 재중 한인 과학기술자들의 네트워킹과 학문적 융합은 과학기술이 급격히 발전하는 중국에서 우리가 할 수 있는 또는 해야만 하는 중요한 역할 중 하나라고 생각합니다.
여러분의 열린 지식과 열린 마음으로 다시한번 뜨거운 학술의 장이 되기를 기대합니다.
재중한인과학기술자협회 회장 이우근
□ 시간 :학술대회: 2018년 12월1일(토) 오전10:00
□ 장소 :Crowne Plaza Beijing Lido (北京丽都皇冠假日酒店)
(地址: 北京市朝阳区将台路6号, Tel: 010-64373388)
□ 후원 및 협찬기관 :주 중국 대한민국대사관, 한국과학기술단체총연합회, 한중 과기협력 센터, SK하이닉스
* 공식 초청장이 필요하신 분께서는 sungsoo.kim@uestc.edu.cn 연락주시기 바랍니다.
]]>http://kseach.org/ksc/archives/783/feed0KSEACH 2018 conferences 안내
http://kseach.org/ksc/archives/746
http://kseach.org/ksc/archives/746#respondThu, 01 Nov 2018 07:05:42 +0000http://kseach.org/ksc/?p=746재중과협 회원 여러분,
안녕하십니까? 쌀쌀해지는 날씨와 함께 겨울이 조금씩 다가오는 것 같습니다.
올 2018년에는 춘계학술대회 (베이징) 및 추계학술대회 (충칭)를 가지며, 풍성한 학술교류의 밑걸음을 다져나갔습니다.
다가오는 12월 1일 토요일, 2018년을 마감하며, 베이징에서 총회 및 학술대회를 계획하고 있습니다.
<2018 재중한인과학기술자협회 총회>
일시: 2018년 12월 1일 토요일
장소: 베이징 리두 크라운프라자호텔 예정
타 여러기관 및 다양한 분야의 연사들을 모시고자 합니다. 아울러, 재중과협 회원의 강연 자리도 마련하고자 합니다.
이번 추계 학술대회는 서남권 지부의 적극적인 지원과 협조에 처음으로 수도권을 벗어나 총칭에서 열리게 되었습니다. 중국내 한인 과학기술자 분들의 다양한 네트워크를 위해 이번 학회는 더욱 의미가 크다고 생각합니다. 부디 참석하셔서 여러 분야의 학자 및 연구자분들과 심도있고 폭넓은 교류를 할 수 있는 뜻깊은 학술의 장이 되기를 빕니다.
]]>http://kseach.org/ksc/archives/704/feed0KIRD(국가과학기술인력개발원) 중국 대학원생 근로계약 내용 조사
http://kseach.org/ksc/archives/670
http://kseach.org/ksc/archives/670#respondTue, 24 Jul 2018 03:26:41 +0000http://kseach.org/ksc/?p=670KIRD(국가과학기술인력개발원)에서 중국 대학원생 근로계약 내용을 조사합니다.
상세 내용은 아래와 같습니다.
○ 조사항목 : 일본, 중국 대학원생 근로계약 내용 및 기준
– 박사과정 전체 계약 여부, 업무별 구분 여부 등
– 학습과 노동의 구분, 연구부분에 대한 계약 기준 등
– 관련 국가정책, 법령 규정 등
○ 조사내용
– 대학원생* 근로계약 체결 및 업무조건에 관한 해외사례 정책보고 (백데이터) 정리
* 대학원에 소속된 석사과정·박사과정·수료생 등 졸업 이전 학생
– 대학원생이 LAP 또는 외부연구원 또는 국가연구개발사업 업무수행시 지급되는 인센티브 내용*
* 4대보험, 근로계약, 임금 등
– 상기 내용에 대한 국가정책, 관련 법령, 규정 등
○ 제출자료
– 첨부 1을 참고하여, 약 2~3장 분량의 정책자료 요약본 제출
– 정책자료 작성내용의 관련 근거 자료 제출(백데이터)
○ 조사기간 : 2018년 7월 27일(금) 15:00까지
○ 자문비용 : 등급별 상이 하므로 이력서 제출후 내부 규정에 따라 지급됩니다.(40만원 이상 예상)