本文整理汇总了PHP中Annotation::get_id方法的典型用法代码示例。如果您正苦于以下问题:PHP Annotation::get_id方法的具体用法?PHP Annotation::get_id怎么用?PHP Annotation::get_id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Annotation
的用法示例。
在下文中一共展示了Annotation::get_id方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
function index()
{
$url = 'http://www.plurk.com/p/67k6st#response-1739920625';
$text1 = '[CODING D17] 晚上睡覺時天氣、室溫、冷氣、電扇、被子的厚度與蓋的方法,組合起來就可以預測隔天會不會一整天過敏。但我還沒有明顯地分辨出他們的關聯。';
$text2 = '變項太多,這回歸的組合也不知道要排到什麼時候orz';
$note = '「西瓜牛奶去冰的話可能沒有滿杯喔」由於店員這樣說,所以我改口跟他說不用去冰好了……結果還是一樣沒有滿杯orz';
$email = 'puddingchen.35@gmail.com';
$email_siroma = 'siroma@gmail.com';
$scope1 = $this->annotation_scope->create_scope(3, 20, $text1, $url);
$scope2 = $this->annotation_scope->create_scope(26, 40, $text2, $url);
$scope_coll = new Annotation_scope_collection();
$scope_coll->add_scope($scope1);
$scope_coll->add_scope($scope2);
$len = $scope_coll->get_scope_length();
$user = $this->user->create_user($url, $email);
$user_siroma = $this->user->create_user($url, $email_siroma);
$annotation = $this->annotation->create_annotation($user, $scope_coll);
$this->unit->run($annotation->get_id(), 9999, '是否有正確地存入資料庫?');
$scope_coll2 = $annotation->get_scopes();
$this->unit->run($scope_coll2->get_scope_length(), $len, '測試get_scopes()');
$annotation->set_note($note);
$this->unit->run($annotation->get_note(), $note, '測試get_note()');
$annotation->set_type(3);
$type = $annotation->get_type();
$this->unit->run($type->get_name(), 'annotation.type.confusion', '測試get_type()');
$user = $annotation->get_user();
$this->unit->run($user->get_email(), $email, '測試get_user()');
$this->unit->run($user->get_email(), $email, '測試get_user()');
$annotation_topic = $this->annotation->create_annotation($user_siroma, $scope2);
$annotation_topic_id = $annotation_topic->get_id();
$annotation->set_respond_to_topic($annotation_topic);
$topic = $annotation->get_respond_to_topic();
$this->unit->run($topic->get_id(), $annotation_topic_id, '測試respond_to_topic()');
//來測試respond_to_coll
$scope3 = $this->annotation_scope->create_scope(104, 135, $note, $url);
$annotation_respond = $this->annotation->create_annotation($user_siroma, $scope3);
//$annotation_coll = new Annotation_collection($annotation_respond);
$annotation->set_respond_to_coll($annotation_respond);
$coll = $annotation->get_respond_to_coll();
$this->unit->run($coll->length(), 1, '測試respond_to_coll()的length');
///$this->unit->run($coll->get_item(0)->get_id()
// , $annotation_respond->get_id()
// , '測試respond_to_coll()的get_id() | '.$annotation->get_id());
$annotation->set_feature(1, 1);
$feature = $annotation->get_feature(1);
$this->unit->run($feature->get_name(), 'annotation.feature.location', 'set_feature之後又get_feature->get_name()');
$this->unit->run($feature->get_value(), '1', 'set_feature之後又get_feature->get_value()');
$annotation->set_feature(1, 2);
$feature = $annotation->get_feature(1);
$this->unit->run($feature->get_value(), '2', '再一次set_feature之後又get_feature->get_value()');
$score_number = 2.36978;
$score_number2 = 1.36978;
$annotation->set_score(0, $score_number);
$score = $annotation->get_score(0);
$this->unit->run($score->get_name(), 'annotation.score.integrated', 'set_score之後又get_score->get_name()');
$this->unit->run($score->get_score(), $score_number, 'set_score之後又get_score->get_value()');
$annotation->set_score(0, $score_number2);
$score = $annotation->get_score(0);
$this->unit->run($score->get_score(), $score_number2, '再一次set_score之後又get_score->get_score()');
$email_like = 'siroma@gmail.com';
$user_like = $this->user->create_user($url, $email_like);
$this->unit->run_false($user->get_id(), $user_like->get_id(), '建立一個user_like,跟user不同人吧?');
$this->unit->run_false($annotation->get_user()->get_id(), $user_like->get_id(), 'user_like,跟標註的作者user不同人吧?');
$this->unit->run($annotation->get_like_count(), 0, 'like測試,加入user_like之前 get_like_count()');
$annotation->add_like($user_like);
$this->unit->run($annotation->get_like_count(), 1, 'like測試,加入user_like之後 get_like_count()');
$annotation->remove_like($user_like);
$this->unit->run($annotation->get_like_count(), 0, 'like測試,移除user_like之後 get_like_count()');
$annotation->add_like($user_like);
$this->unit->run($annotation->get_like_count(), 1, 'like測試,再加入user_like之後 get_like_count()');
$this->unit->run($annotation->get_user()->get_unread_notification_count(), 1, '更新之前,到底annotation的作者收到幾封未讀通知呢?應該是有like的一封');
$annotation->update();
$this->unit->run(TRUE, TRUE, '======================更新完畢======================');
$this->unit->run($user_siroma->get_unread_notification_count(), 1, '更新之後,由於user_siroma被設為topic跟respond的對象,所以user_siroma應該只會收到1封通知');
$db = $this->db;
$db->from('annotation2like_count');
$db->where('annotation_id', $annotation->get_id());
$db->select('like_count');
$query = $db->get();
$row = $query->row_array();
$like_count = intval($row['like_count']);
$this->unit->run($like_count, 1, '測試annotation2like_count');
//----------------------------------------------------------------------------
//搜尋看看吧
$id = $annotation->get_id();
$annotation2 = new Annotation($id);
$scope_coll3 = $annotation2->get_scopes();
$this->unit->run($annotation2->get_id(), $id, '$annotation2的id是否跟當初設定的相同?');
$this->unit->run($scope_coll3->get_scope_length(), $len, '取出$annotation2之後,測試scopes');
$this->unit->run($scope_coll3->length(), 2, '取出$annotation2之後,測試scopes有幾個');
$this->unit->run($scope_coll3->get_anchor_speech(), $scope_coll2->get_anchor_speech(), '取出$annotation2之後,測試scopes的get_anchor_speech()');
$this->unit->run($annotation2->get_note(), $note, '取出$annotation2之後,測試note');
$type2 = $annotation2->get_type();
$this->unit->run($type2->get_name(), 'annotation.type.confusion', '取出$annotation2之後,測試type');
$user2 = $annotation2->get_user();
$this->unit->run($user2->get_email(), $email, '取出$annotation2之後,測試get_user()');
$text2 = '雖然這邊太吵了應該聽不到尖叫聲,不過應該是會有人間叫';
$this->unit->run($annotation2->get_like_count(), 1, '搜尋之後,like測試,已經加入user_like');
$this->unit->run_false($annotation2->get_user()->get_id(), $user_like->get_id(), '確認一下兩個標註應該是不同人吧?');
$annotation2->set_note($text2);
//.........这里部分代码省略.........
示例2: not_accept
public function not_accept()
{
$url = 'http://www.plurk.com/p/6esun8#response-1799208331';
$annotation = $this->annotation->find('annotation_id', 1017);
$annotation = new Annotation(1017);
$original_annotation_id = $annotation->get_id();
$recommend = new Annotation_recommend();
$recommend->set_webpage($url);
$recommend->set_recommended($annotation);
$recommend->update();
$annotation = new Annotation(1017);
$recommend = $annotation->get_recommend();
//-----------------------------------------------
$length = $annotation->get_scope_length();
$recommend = $annotation->get_recommend();
$annotation = $recommend->set_accept(FALSE);
$length = $annotation->get_scope_length();
$this->unit->run($annotation->get_scope_length(), $length, '拒絕推薦之後,由於並沒有改變標註,所以長度還是一樣');
$this->unit->run($annotation->get_id(), $original_annotation_id, '拒絕推薦之後,這個標註應該跟上面的一樣');
$recommend = $annotation->get_recommend();
$this->unit->run($recommend, NULL, '拒絕推薦之後,標註就沒有推薦了');
$annotation = $this->annotation->find('annotation_id', 1017);
$this->unit->run($annotation->get_id(), 'is_int', '拒絕推薦之後,原本的標註仍在');
// $this->unit->run($test_result
// , $expected_result
// , $test_name);
//context_complete();
unit_test_report($this, __METHOD__);
}
示例3: _log
/**
* log區
* @param Annotation $topic_annotation
*/
private function _log($topic_annotation)
{
//log區-mobile瀏覽討論-action = 41
$action = 41;
// data: topic_id
$log_webpage = $topic_annotation->get_append_to_webpages();
$log_webpage_id = $log_webpage[0]->get_id();
$log_topic_id = $topic_annotation->get_id();
$log_user_id = get_context_user_id();
$array_data = array('target_topic' => FALSE, 'topic_id' => $log_topic_id, 'order_by' => 'create', 'show_total_count' => TRUE);
kals_mobile_log($this->db, $log_webpage_id, $action, array('memo' => $array_data, 'user_id' => $log_user_id));
context_complete();
//寫入db
}
示例4: set_recommended
public function set_recommended(Annotation $annotation)
{
$this->recommended = $annotation;
$annotation_id = $annotation->get_id();
if (isset($annotation_id)) {
$this->set_field('recommended_annotation_id', $annotation_id);
}
}
示例5: _delete_annotation
/**
*
* @param Annotation $annotation
* @return Boolean
*/
private function _delete_annotation($annotation)
{
$annotation_id = $annotation->get_id();
$annotation_user = $annotation->get_user();
//test_msg('delete', $annotation_user->get_id());
if (is_null($annotation_user->get_id())) {
$data = show_error('No annotation.');
return $this->_display_jsonp($data, $callback);
}
$user = $this->user;
if ($user->equals($annotation_user) === FALSE) {
$data = show_error('Permission deny.');
return $this->_display_jsonp($data, $callback);
}
$action = "image_spot.delete";
kals_log($this->db, $action, $annotation_id);
set_ignore_authorize(true);
$annotation->delete();
context_complete();
set_ignore_authorize(false);
}
示例6: annotation_thread
/**
* annotation_thread
* @param type $annotation_id
*/
public function annotation_thread($annotation_id)
{
//載入libary
$this->load->library('kals_resource/Webpage');
$this->load->library('kals_resource/Annotation');
$this->load->library('scope/Scope_anchor_text');
$this->load->library('search/Search_annotation_collection');
// 語系
$this->lang->load('kals_web_apps');
// 接收-送回應值
// 用post接收textarea的值:array
$data = array();
if (isset($_POST["note_text"])) {
$note_massage = $_POST["note_text"];
$data["note_massage"] = $note_massage;
}
// radio-type
if (isset($_POST["annotation_type"])) {
$anno_type = $_POST["annotation_type"];
$data['pop_type'] = $anno_type;
}
$annotation_self_id = $annotation_id;
// check topic id
$is_topic_id = NULL;
if (isset($annotation_id)) {
$topic_array = $this->db->query("SELECT topic_id\n FROM annotation\n WHERE annotation_id ='" . $annotation_id . "'");
foreach ($topic_array->result_array() as $row) {
$is_topic_id = $row['topic_id'];
}
}
if ($is_topic_id !== NULL) {
//is respond id
$annotation_id = $is_topic_id;
}
//echo 'annotation_id ='.$annotation_id.'/';
//echo 'topic_id = '.$is_topic_id.'/';
// $login_test = $this->session->userdata('logged_in');
//echo 'loggin = '.$login_test.'/';
// $annotation_id
$annotation = new Annotation($annotation_id);
$annotation_id = $annotation->get_id();
$log_topic_id = $annotation_id;
$anchor_text = $annotation->get_anchor_text();
$user = $annotation->get_user()->get_name();
$user_id = $annotation->get_user()->get_id();
$type = $annotation->get_type()->get_name();
$css_type = $annotation->get_type()->get_type_id();
$note = $annotation->get_note();
$timestamp = $annotation->get_update_timestamp();
//$log_user_id = $this->session->userdata('user_id');
//echo $this->session->userdata('user_id').'??';
//echo $this->session->userdata('logged_in').'??';
$login_user = get_context_user();
$log_user_id = NULL;
$logged_id = FALSE;
if (isset($login_user)) {
$log_user_id = $login_user->get_id();
$logged_id = TRUE;
}
// 如果有回應值才要做新增的動作
if (isset($note_massage) && isset($anno_type)) {
// 開始新增標註回應
//先將權限設成管理者
set_ignore_authorize(true);
//取得參考網址(全文網址)資料($url)跟現在登入(session)的user
//$user_now = $this->session->userdata('user_id');
$user_now = get_context_user();
//建立範圍(使用topic_id取得)
$scope_coll = $annotation->get_scopes();
//開始建立回應標註
$new_res_annotation = $annotation->create_annotation($user_now, $scope_coll);
$type_id = $anno_type;
//設定標註細節
//echo 'set annotation detail ->';
//type
if (isset($type_id)) {
$new_res_annotation->set_type($type_id);
} else {
echo 'no type_id';
}
set_ignore_authorize(true);
//note
if (isset($note_massage) && $note_massage !== '') {
$new_res_annotation->set_note($note_massage);
} else {
echo 'no note_msg';
}
//標註錨點範圍的特徵(feature location)
$feature_location = $annotation->get_feature_location();
if (isset($feature_location)) {
$new_res_annotation->set_feature_location($feature_location);
} else {
echo 'no feature_location';
}
//設定respond_topic_id
$topic_id = $annotation_id;
//.........这里部分代码省略.........
示例7: create_annotation
public function create_annotation($user_id, $scope_coll, $do_update = TRUE)
{
$this->_load_user();
$user_id = $this->CI->user->filter_id($user_id);
$annotation = new Annotation();
$annotation->set_scopes($scope_coll);
$annotation->set_user($user_id);
if ($do_update) {
$annotation->update();
}
if (is_null($annotation->get_id())) {
show_error("Annotation create fail. scope_coll: " . $scope_coll . "; user_id: " . $user_id);
}
return $annotation;
}
示例8: _edit_process
private function _edit_process($json)
{
$data = json_to_object($json);
//先將權限設成管理者
set_ignore_authorize(true);
//取得參考網址資料跟位於session的user
$user = $this->user;
$annotation = NULL;
if (isset($data->annotation_id)) {
$annotation = new Annotation($data->annotation_id);
$annotation_user = $annotation->get_user();
if ($user->get_id() == $annotation_user->get_id()) {
$data = $this->_setup_annotation($annotation, $data);
//edit之後重算分數
set_ignore_authorize(true);
$annotation = new Annotation($annotation->get_id());
if ($annotation->is_respond() === FALSE) {
$annotation = $this->_setup_scores($annotation);
//$annotation->update();
}
context_complete();
set_ignore_authorize(false);
} else {
$data = create_json_excpetion('Edit Annnotation Error', 'You cannot edit annotation whick is not yours.');
}
} else {
$data = create_json_excpetion('Edit Annnotation Error', 'Annotation ID is NULL');
}
//log區
$array_data = NULL;
if (isset($annotation)) {
$array_data = $annotation->export_webpage_data($this->url);
}
$action = 15;
if ($annotation->is_respond()) {
$action = 21;
}
$user_id = NULL;
if (isset($user)) {
$user_id = $user->get_id();
}
kals_log($this->db, $action, array('memo' => $array_data, 'user_id' => $user_id));
return $data;
}
示例9: _print_respond_annotation_table
/**
* 輸出Respond Annotation的資料
* @param Annotation $annotation
* @return string
*/
private function _print_respond_annotation_table($annotation)
{
$annotation_id = $annotation->get_id();
$text = '<a name="annotation_' . $annotation_id . '" id="annotation_' . $annotation_id . '"></a><table class="annotation_table respond" cellspacing="0" cellpadding="0" border="0" align="center"><tbody>';
//第一列
//
// email 類別 發表日期 修改日期 被喜愛 被共識 被回應 編號
$email = $annotation->get_user()->get_email();
$print_email = substr($email, 0, 8);
$print_email = '<a href="' . site_url('/admin_apps/exp201012annotation/email_list/' . $this->_find_email_key($email)) . '">' . $print_email . '</a>';
$type_name = $annotation->get_type()->get_name();
$type_name_lang = $this->lang->line('web_apps.' . $type_name);
$type_name_classname = substr($type_name, strrpos($type_name, '.') + 1);
$create_timestamp = $annotation->get_create_timestamp();
//2010-12-08 23:17:10.984+08
//01234567890123456789
$create_timestamp = $this->_trim_timestamp($create_timestamp);
$update_timestamp = $annotation->get_update_timestamp();
$update_timestamp = $this->_trim_timestamp($update_timestamp);
$text .= '<tr> <td> <table class="row" border="1" cellpadding="0" cellspacing="0"><tbody><tr>' . '<th class="email">' . $print_email . '</th>' . '<th class="type ' . $type_name_classname . '">' . $type_name_lang . '</th>' . '<th>建立日期:</th><td class="date">' . $create_timestamp . '</td>' . '<th>修改日期:</th><td class="date">' . $update_timestamp . '</td>' . '<td class="annotation_id">#' . $annotation_id . '</td>' . '</tr></tbody></table> </td> </tr>';
$note = $annotation->get_note();
$respond_to_coll = $annotation->get_respond_to_coll();
$respond_to_text = '';
foreach ($respond_to_coll as $respond_to_annotation) {
if ($respond_to_text != '') {
$respond_to_text .= '; ';
}
$respond_to_id = $respond_to_annotation->get_id();
$respond_to_email = $respond_to_annotation->get_user()->get_email();
$respond_to_text .= '<a href="#annotation_' . $respond_to_id . '">' . $respond_to_email . '#' . $respond_to_id . "</a>";
}
if ($respond_to_text != '') {
$text .= '<tr><td><table border="1" width="100%" cellpadding="0" cellspacing="0"><tbody><tr><th>回應對象</th><td>' . $respond_to_text . '</td></tr></tbody></table></td></tr>';
}
if ($note != '') {
$text .= '<tr><td><table class="note" width="100%" border="1" cellpadding="0" cellspacing="0"><tbody><tr><td>' . $note . '</td></tr></tbody></table></td></tr>';
}
$text .= '</tbody></table>' . "\n\n";
return $text;
}
示例10: calculator
public function calculator()
{
$url = $this->url;
$this->create_annotation();
$webpage = $this->webpage->create($url);
$annotation = $this->annotation;
$annotation3 = $this->annotation3;
$this->unit->run($annotation->get_score(0)->get_score(), NULL, '先看看$annotation是否有分數?');
$this->unit->run($annotation3->get_score(0)->get_score(), NULL, '先看看$annotation3是否有分數?');
//----------------------------------
//$this->annotation_score_calculator->set_webpage($url);
$annotation_score_calculator = $webpage->get_score_calculator();
//$annotation_score_calculator->set_annotation($annotation);
//$annotation_score_calculator->set_annotation_scores();
//
// $scores = $annotation_score_calculator->calculate_scores($annotation);
// $annotation->set_scores($scores);
// $annotation->update();
$annotation_score_calculator->setup_annotation_scores($annotation);
$annotation_id = $annotation->get_id();
//annotation3要重新讀取,才能取得分數
$annotation3 = new Annotation($annotation3->get_id());
$this->unit->run($annotation->get_score(0)->get_score(), 'is_float', '看一下是否有存入資料庫?');
$this->unit->run($annotation3->get_score(0)->get_score(), 'is_float', '看一下共識範圍的是否也一併有了分數?');
$score_coll = $annotation->get_score_coll();
$this->unit->run($score_coll->length(), 7, '看一下是否有取得正確7個分數?');
$scores_array = $score_coll->get_scores_array();
$annotation_new = new Annotation($annotation_id);
$this->unit->run($annotation_new->get_score(0)->get_score(), 'is_float', 'find之後,看一下是否有存入資料庫?');
$score_coll = $annotation_new->get_score_coll();
$this->unit->run($score_coll->length(), 7, 'find之後,看一下是否有取得正確7個分數?');
$this->unit->run($score_coll->get_scores_array(), $scores_array, 'find之後,比對一下是否跟儲存之前的分數一樣?');
unit_test_report($this, __METHOD__);
}