페이지 모듈의 컨텐츠 꾸미는 부분을 위지윅으로 변경

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@2957 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
zero 2007-11-12 12:04:01 +00:00
parent 2b1d64f477
commit 7de5dc3a0b
30 changed files with 974 additions and 229 deletions

View file

@ -66,6 +66,45 @@
$this->add('widget_code', $widget_code);
}
/**
* @brief 페이지 수정시 위젯 코드의 생성 요청
**/
function procWidgetGenerateCodeInPage() {
// 먼저 정상적인 widget 코드를 구함
$this->procWidgetGenerateCode();
$widget_code = $this->get('widget_code');
// 변수 정리
$vars = Context::getRequestVars();
$widget = $vars->selected_widget;
unset($vars->module);
unset($vars->body);
unset($vars->act);
unset($vars->selected_widget);
if(!$vars->widget_sequence) $vars->widget_sequence = getNextSequence();
// args 정리
$attribute = array();
if($vars) {
$vars->widget_position = "left";
$vars->widget_fix_width = "Y";
foreach($vars as $key => $val) {
if($key == 'widget_position') continue;
if(strpos($val,'|@|')>0) {
$val = str_replace('|@|',',',$val);
$vars->{$key} = $val;
}
$attribute[] = sprintf('%s="%s"', $key, str_replace('"','\"',$val));
}
}
// 결과물을 구함
$oWidgetHandler = new WidgetHandler();
$widget_code = $oWidgetHandler->execute($widget, $vars, true);
$this->add('widget_code', $widget_code);
}
/**
* @brief 선택된 위젯 - 스킨의 컬러셋을 return
**/