SlideAction.class.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <?php
  2. /**
  3. *
  4. * Slide(幻灯片管理)
  5. *
  6. */
  7. if(!defined("Ainaphp")) exit("Access Denied");
  8. class SlideAction extends AdminbaseAction {
  9. protected $Tplpath,$Flashpath,$Xmlpath;
  10. function _initialize()
  11. {
  12. parent::_initialize();
  13. $this->Tplpath = TMPL_PATH.'/Home/'.$this->sysConfig['DEFAULT_THEME'].'/';
  14. //$this->Flashpath = TMPL_PATH.$this->sysConfig['DEFAULT_THEME'].'/Public/flash/';
  15. $this->Xmlpath = TMPL_PATH.'/Home/'.$this->sysConfig['DEFAULT_THEME'].'/Public/xml/';
  16. }
  17. function _before_add(){
  18. $Tpl = template_file('Slide');
  19. $this->assign ( 'Tpl', $Tpl );
  20. }
  21. function _before_edit(){
  22. $Tpl = template_file('Slide');
  23. $this->assign ( 'Tpl', $Tpl );
  24. //$Flash= template_file('',$this->Flashpath,'swf');
  25. //$this->assign ( 'Flash', $Flash);
  26. }
  27. function edittpl(){
  28. $file = $this->Tplpath.'Slide_'.$_REQUEST['tpl'].'.html';
  29. if($_POST['content']){
  30. file_put_contents($file,htmlspecialchars_decode(stripslashes($_POST['content'])));
  31. $this->success (L('do_ok'));
  32. }else{
  33. $content = htmlspecialchars(file_get_contents($file));
  34. echo ' <form method="post" id="myform" action="'.U('Slide/edittpl').'">Slide_'.$_GET['tpl'].'.html<input type="hidden" name="tpl" value="'.$_GET['tpl'].'"/><textarea name="content" id="content" style="width:100%;height:500px;" >'.$content.'</textarea> <input type="hidden" name="isajax" value="1" />
  35. <input name="dosubmit" type="submit" value="1" style="display:none;"class="hidden" id="dosubmit"> </form>';
  36. }
  37. }
  38. function picmanage(){
  39. $fid=intval($_REQUEST['fid']);
  40. if(!$fid) $this->error(L('do_empty'));
  41. $map = array();
  42. if(APP_LANG)$map['lang']=array('eq',LANG_ID);
  43. $slide = D('Slide')->find($fid);
  44. $map['fid']=array('eq',$fid);
  45. $list = D('Slide_data')->where($map)->order(" listorder ASC ,id DESC ")->select();
  46. $this->assign ( 'list', $list );
  47. $this->assign ( 'fid', $fid );
  48. $this->assign ( 'slide', $slide );
  49. $this->display();
  50. }
  51. function addpic(){
  52. $fid=intval($_REQUEST['fid']);
  53. if(!$fid) $this->error(L('do_empty'));
  54. $map = array();
  55. if(APP_LANG)$map['lang']=array('eq',LANG_ID);
  56. $slide = D('Slide')->find($fid);
  57. $map['fid']=array('eq',$id);
  58. $list = D('Slide_data')->where($map)->order(" listorder ASC ,id DESC ")->select();
  59. $yourphp_auth_key = sysmd5(C('ADMIN_ACCESS').$_SERVER['HTTP_USER_AGENT']);
  60. $yourphp_auth = authcode('1-1-0-10-jpeg,jpg,png,gif-5-230', 'ENCODE',$yourphp_auth_key);
  61. $this->assign('yourphp_auth',$yourphp_auth);
  62. $vo['status'] = 1;
  63. $this->assign ( 'vo', $vo);
  64. $this->assign ( 'list', $list );
  65. $this->assign ( 'fid', $fid );
  66. $this->assign ( 'slide', $slide );
  67. $this->display ('Slide:editpic');
  68. }
  69. function editpic(){
  70. $id=intval($_REQUEST['id']);
  71. $fid=intval($_REQUEST['fid']);
  72. if(!$id) $this->error(L('do_empty'));
  73. $slide = D('Slide')->find($fid);
  74. //isadmin,more,isthumb,file_limit,file_types,file_size,moduleid,
  75. $yourphp_auth_key = sysmd5(C('ADMIN_ACCESS').$_SERVER['HTTP_USER_AGENT']);
  76. $yourphp_auth = authcode('1-1-0-10-jpeg,jpg,png,gif-5-230', 'ENCODE',$yourphp_auth_key);
  77. $this->assign('yourphp_auth',$yourphp_auth);
  78. $vo = D('Slide_data')->find($id);
  79. $this->assign ( 'fid', $fid );
  80. $this->assign ( 'vo', $vo );
  81. $this->assign ( 'slide', $slide );
  82. $this->display ();
  83. }
  84. function insertpic(){
  85. if(APP_LANG)$_POST['lang']=LANG_ID;
  86. //if($_POST['setup']) $_POST['setup']=array2string($_POST['setup']);
  87. $name = 'Slide_data';
  88. $model = D ($name);
  89. if (false === $model->create ()) {
  90. $this->error ( $model->getError () );
  91. }
  92. $_POST['id'] = $id= $model->add();
  93. if ($id !==false) {
  94. if($_POST['aid']){
  95. $Attachment =M('Attachment');
  96. $aids = implode(',',$_POST['aid']);
  97. $data['id']= $_POST['id'];
  98. $data['catid']= $_POST['fid'];
  99. $data['status']= '1';
  100. $Attachment->where("aid in (".$aids.")")->save($data);
  101. }
  102. $this->assign ( 'jumpUrl', U('Slide/picmanage?fid='.$_POST['fid']) );
  103. $this->success (L('add_ok'));
  104. } else {
  105. $this->error (L('add_error').': '.$model->getDbError());
  106. }
  107. }
  108. function updatepic(){
  109. $name = 'Slide_data';
  110. $model = D ( $name );
  111. if (false === $model->create ()) {
  112. $this->error ( $model->getError () );
  113. }
  114. if (false !== $model->save ()) {
  115. if($_POST['aid']){
  116. $Attachment =M('Attachment');
  117. $aids = implode(',',$_POST['aid']);
  118. $data['id']= $_POST['id'];
  119. $data['catid']= $_POST['fid'];
  120. $data['status']= '1';
  121. $Attachment->where("aid in (".$aids.")")->save($data);
  122. }
  123. $this->success (L('edit_ok'));
  124. } else {
  125. $this->success (L('edit_error').': '.$model->getDbError());
  126. }
  127. }
  128. function param()
  129. {
  130. $files = glob(LANG_NAMEpath.'*');
  131. $lang_files=array();
  132. foreach($files as $key => $file) {
  133. //$filename = basename($file);
  134. $filename = pathinfo($file);
  135. $lang_files[$key]['filename'] = $filename['filename'];
  136. $lang_files[$key]['filepath'] = $file;
  137. $temp = explode('_',$filename);
  138. $lang_files[$key]['name'] = count($temp)>1 ? $temp[0].L('LANG_module') : L('LANG_common') ;
  139. }
  140. $this->assign ( 'id', $id );
  141. $this->assign ( 'lang', LANG_NAME );
  142. $this->assign ( 'files', $lang_files );
  143. $this->display();
  144. }
  145. function listorder(){
  146. $name ='Slide_data';
  147. $model = M ( $name );
  148. $pk = $model->getPk ();
  149. $ids = $_POST['listorders'];
  150. foreach($ids as $key=>$r) {
  151. $data['listorder']=$r;
  152. $model->where($pk .'='.$key)->save($data);
  153. }
  154. $this->success (L('do_ok'));
  155. }
  156. function delete(){
  157. $name = MODULE_NAME;
  158. $model = M ( $name );
  159. $pk = $model->getPk ();
  160. $id = $_REQUEST [$pk];
  161. if (isset ( $id )) {
  162. if(false!==$model->delete($id)){
  163. $name ='Slide_data';
  164. $model = M ( $name );
  165. $model->where("fid=".$id)->delete();
  166. delattach(array('moduleid'=>'230','catid'=>$id));
  167. $this->success(L('delete_ok'));
  168. }else{
  169. $this->error(L('delete_error').': '.$model->getDbError());
  170. }
  171. }else{
  172. $this->error (L('do_empty'));
  173. }
  174. }
  175. function deletepic(){
  176. $name ='Slide_data';
  177. $model = M ( $name );
  178. $pk = $model->getPk ();
  179. $id = $_REQUEST [$pk];
  180. if (isset ( $id )) {
  181. if(false!==$model->delete($id)){
  182. delattach(array('moduleid'=>'230','id'=>$id));
  183. $this->success(L('delete_ok'));
  184. }else{
  185. $this->error(L('delete_error').': '.$model->getDbError());
  186. }
  187. }else{
  188. $this->error (L('do_empty'));
  189. }
  190. }
  191. }
  192. ?>