스마일리 Smiley Helper¶
스마일리 헬퍼는 스마일리(이모티콘)을 관리할 수 있도록 해줍니다.
Important
스마일리 헬퍼는 DEPRECATED 되었습니다. 그리고 사용하실 수 없습니다. 이전 버전과의 호환만을 위해 유지되고 있습니다.
개요 Overview¶
스마일리는 텍스트 이모티콘(예 : :-) )을 받아서 이미지 이모티콘()으로 렌더링 해줍니다.
또한 한 세트의 스마일리를 표시한 후 사용자가 클릭하면 원하는 위치에 삽입되도록 할 수도 있습니다. 예를 들어, 만약 여러분의 블로그에서 사용자 입력을 받는다면, 입력폼 옆에 스마일리를 보여줄 수 있습니다. 사용자가 원하는 스마일리를 클릭하면, 자바스크립트를 통해서 폼 안에 삽입됩니다.
클릭 가능한 스마일리 사용법 Clickable Smileys Tutorial¶
아래 예제는 폼 옆에 클릭 가능한 스마일리 세트를 만드는 법을 보여줍니다. 먼저 스마일리 이미지를 다운로드하여 설치하셔야 합니다. 그후 컨트롤러와 뷰 파일을 설명된대로 만듭니다.
Important
시작하기 전에, 스마일리를 다운받고 서버에서 일반적으로 접근가능한 곳에 저장하세요. 그리고 스마일리 변환배열이 application/config/smileys.php 파일에 있어야 합니다.
컨트롤러 The Controller¶
application/controllers/ 폴더에서, smileys.php 파일을 생성한 후 아래의 코드를 삽입하세요.
Important
get_clickable_smileys() 함수의 url 을 여러분의 스마일리(smiley) 폴더로 바꾸세요.
아시다시피 본예제에서는 스마일리 헬퍼 외에 테이블클래스(Table Class)도 사용합니다:
<?php
class Smileys extends CI_Controller {
public function index()
{
$this->load->helper('smiley');
$this->load->library('table');
$image_array = get_clickable_smileys('http://example.com/images/smileys/', 'comments');
$col_array = $this->table->make_columns($image_array, 8);
$data['smiley_table'] = $this->table->generate($col_array);
$this->load->view('smiley_view', $data);
}
}
application/views/ 폴더에서, smiley_view.php 파일을 생성한 후 다음 코드를 삽입합니다:
<html>
<head>
<title>Smileys</title>
<?php echo smiley_js(); ?>
</head>
<body>
<form name="blog">
<textarea name="comments" id="comments" cols="40" rows="4"></textarea>
</form>
<p>Click to insert a smiley!</p>
<?php echo $smiley_table; ?> </body> </html>
When you have created the above controller and view, load it by visiting http://www.example.com/index.php/smileys/
</body>
</html>
Field Aliases¶
When making changes to a view it can be inconvenient to have the field id in the controller. To work around this, you can give your smiley links a generic name that will be tied to a specific id in your view.
$image_array = get_smiley_links("http://example.com/images/smileys/", "comment_textarea_alias");
To map the alias to the field id, pass them both into the smiley_js() function:
$image_array = smiley_js("comment_textarea_alias", "comments");
사용 가능한 함수들 Available Functions¶
- get_clickable_smileys($image_url[, $alias = ''[, $smileys = NULL]])¶
인수: - $image_url (string) – URL path to the smileys directory
- $alias (string) – Field alias
반환값: An array of ready to use smileys
반환형: array
클릭 가능한 링크로 감싸진 스마일리 이미지의 배열을 리턴합니다. 스마일리 폴더의 URL 을 첫 번째 파라미터로 넘겨줘야 합니다.
예제:
$image_array = get_clickable_smileys('http://example.com/images/smileys/', 'comment');
- smiley_js([$alias = ''[, $field_id = ''[, $inline = TRUE]]])¶
인수: - $alias (string) – Field alias
- $field_id (string) – Field ID
- $inline (bool) – Whether we’re inserting an inline smiley
반환값: Smiley-enabling JavaScript code
반환형: 문자열
이미지가 클릭되었을 때 폼에 삽입될 수 있도록 자바스크립트를 생성합니다. 첫 번째 파라미터는 폼의 이름을 넘겨줘야 합니다. 이 함수는 <head> 영역에 위치하도록 디자인 되어있습니다.
예제:
<?php echo smiley_js(); ?>
- parse_smileys([$str = ''[, $image_url = ''[, $smileys = NULL]]])¶
인수: - $str (string) – Text containing smiley codes
- $image_url (string) – URL path to the smileys directory
- $smileys (array) – An array of smileys
반환값: Parsed smileys
반환형: 문자열
텍스트를 입력받아 그에 대응되는 이미지로 변환시켜줍니다. 첫 번째 파라미터는 텍스트를, 두 번째 파라미터는 스마일리 폴더의 URL 을 넘겨줍니다:
예제:
$str = 'Here are some smileys: :-) ;-)'; $str = parse_smileys($str, 'http://example.com/images/smileys/'); echo $str;