Example #1
0
function list_tad_gallery_cate_tree($def_csn = "")
{
    global $xoopsDB, $xoopsTpl;
    $tadgallery = new tadgallery();
    $cate_count = $tadgallery->get_tad_gallery_cate_count();
    $path = get_tadgallery_cate_path($def_csn);
    $path_arr = array_keys($path);
    $sql = "select csn,of_csn,title from " . $xoopsDB->prefix("tad_gallery_cate") . " order by sort";
    $result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'], 3, mysql_error());
    while (list($csn, $of_csn, $title) = $xoopsDB->fetchRow($result)) {
        $font_style = $def_csn == $csn ? ", font:{'background-color':'yellow', 'color':'black'}" : '';
        $open = in_array($csn, $path_arr) ? 'true' : 'false';
        $display_counter = empty($cate_count[$csn]['file']) ? "" : " ({$cate_count[$csn]['file']})";
        $data[] = "{ id:{$csn}, pId:{$of_csn}, name:'{$title}{$display_counter}', url:'cooliris.php?csn={$csn}', open: {$open} ,target:'_self' {$font_style}}";
    }
    $json = implode(",\n", $data);
    if (!file_exists(XOOPS_ROOT_PATH . "/modules/tadtools/ztree.php")) {
        redirect_header("index.php", 3, _MA_NEED_TADTOOLS);
    }
    include_once XOOPS_ROOT_PATH . "/modules/tadtools/ztree.php";
    $ztree = new ztree("album_tree", $json, '', '', "of_csn", "csn");
    $ztree_code = $ztree->render();
    $xoopsTpl->assign('ztree_code', $ztree_code);
    return $data;
}
Example #2
0
function edit_album($csn)
{
    global $upload_powers;
    include_once XOOPS_ROOT_PATH . "/class/xoopsformloader.php";
    $path = get_tadgallery_cate_path($csn, false);
    $patharr = array_keys($path);
    $make_option_js = "";
    foreach ($patharr as $k => $of_csn) {
        $j = $k + 1;
        $make_option_js .= "make_option('of_csn_menu','{$k}','{$of_csn}','{$patharr[$j]}');\n";
    }
    $span = $_SESSION['bootstrap'] == '3' ? 'col-md-' : 'span';
    $controls_row = $_SESSION['bootstrap'] == '3' ? 'form-group' : 'control-group';
    $album = tadgallery::get_tad_gallery_cate($csn);
    //可見群組
    $SelectGroup_name = new XoopsFormSelectGroup("", "enable_group", false, explode(",", $album['enable_group']), 3, true);
    $SelectGroup_name->addOption("", _MD_TADGAL_ALL_OK, false);
    $SelectGroup_name->setExtra("class='{$span}12'");
    $enable_group = $SelectGroup_name->render();
    //可上傳群組
    $SelectGroup_name = new XoopsFormSelectGroup("", "enable_upload_group", false, explode(",", $album['enable_upload_group']), 3, true);
    $SelectGroup_name->setExtra("class='{$span}12'");
    $enable_upload_group = $SelectGroup_name->render();
    if ($_SESSION['bootstrap'] == '3') {
        $form_col = "\n        <div class='form-group'>\n          <label class='col-md-2 control-label'>" . _MD_TADGAL_ALBUM_TITLE . "</label>\n          <div class='col-md-10'>\n            <input class='form-control' type='text' name='title' value='{$album['title']}' id='newTitle' placeholder='" . _MD_TADGAL_TITLE . "'>\n          </div>\n        </div>\n\n\n        <div class='form-group'>\n          <label class='col-md-2 control-label'>" . _MD_TADGAL_OF_CSN . "</label>\n          <div class='col-md-10'>\n            <select name='of_csn_menu[0]' id='of_csn_menu0' class='of_csn_menu'><option value=''></option></select>\n            <select name='of_csn_menu[1]' id='of_csn_menu1' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[2]' id='of_csn_menu2' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[3]' id='of_csn_menu3' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[4]' id='of_csn_menu4' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[5]' id='of_csn_menu5' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[6]' id='of_csn_menu6' class='of_csn_menu' style='display: none;'></select>\n          </div>\n        </div>\n\n\n        <div class='form-group'>\n          <label class='col-md-2 control-label'>" . _MD_TADGAL_CATE_POWER_SETUP . "</label>\n          <div class='col-md-5'>\n            <label>" . _MD_TADGAL_ENABLE_GROUP . "</label>\n            {$enable_group}\n          </div>\n          <div class='col-md-5'>\n            <label>" . _MD_TADGAL_ENABLE_UPLOAD_GROUP . "</label>\n            {$enable_upload_group}\n          </div>\n        </div>\n\n\n        <div class='form-group'>\n          <label class='col-md-2 control-label'>" . _MD_TADGAL_PASSWD . "</label>\n          <div class='col-md-4'>\n            <input type='text' name='passwd' class='form-control' value='{$album['passwd']}' placeholder='" . _MD_TADGAL_PASSWD_DESC . "'>\n          </div>\n\n          <label class='col-md-2 control-label'></label>\n          <div class='col-md-4'>\n            <input type='hidden' name='csn' value='{$album['csn']}'>\n            <input type='hidden' name='show_mode' value='{$album['show_mode']}'>\n            <input type='hidden' name='op' value='update_tad_gallery_cate'>\n            <button type='submit' class='btn btn-primary' id='sbtn'>" . _TAD_SAVE . "</button>\n          </div>\n        </div>\n        ";
    } else {
        $form_col = "\n        <div class='control-group'>\n          <label class='{$span}2 control-label'>" . _MD_TADGAL_ALBUM_TITLE . "</label>\n          <div class='{$span}10 controls controls-row'>\n            <input class='span12 form-control' type='text' name='title' value='{$album['title']}' id='newTitle' placeholder='" . _MD_TADGAL_TITLE . "'>\n          </div>\n        </div>\n\n\n        <div class='control-group'>\n          <label class='{$span}2 control-label'>" . _MD_TADGAL_OF_CSN . "</label>\n          <div class='{$span}10 controls controls-row'>\n            <select name='of_csn_menu[0]' id='of_csn_menu0' class='of_csn_menu'><option value=''></option></select>\n            <select name='of_csn_menu[1]' id='of_csn_menu1' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[2]' id='of_csn_menu2' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[3]' id='of_csn_menu3' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[4]' id='of_csn_menu4' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[5]' id='of_csn_menu5' class='of_csn_menu' style='display: none;'></select>\n            <select name='of_csn_menu[6]' id='of_csn_menu6' class='of_csn_menu' style='display: none;'></select>\n          </div>\n        </div>\n\n\n        <div class='control-group'>\n          <label class='{$span}2 control-label'>" . _MD_TADGAL_CATE_POWER_SETUP . "</label>\n          <div class='{$span}5 controls controls-row'>\n            <label>" . _MD_TADGAL_ENABLE_GROUP . "</label>\n            {$enable_group}\n          </div>\n          <div class='{$span}5 controls controls-row'>\n            <label>" . _MD_TADGAL_ENABLE_UPLOAD_GROUP . "</label>\n            {$enable_upload_group}\n          </div>\n        </div>\n\n\n        <div class='control-group'>\n          <label class='{$span}2 control-label'>" . _MD_TADGAL_PASSWD . "</label>\n          <div class='{$span}4 controls controls-row'>\n            <input type='text' name='passwd' class='span12 form-control' value='{$album['passwd']}' placeholder='" . _MD_TADGAL_PASSWD_DESC . "'>\n          </div>\n\n          <label class='{$span}2 control-label'></label>\n          <div class='{$span}4 controls controls-row'>\n            <input type='hidden' name='csn' value='{$album['csn']}'>\n            <input type='hidden' name='op' value='update_tad_gallery_cate'>\n            <button type='submit' class='btn btn-primary' id='sbtn'>" . _TAD_SAVE . "</button>\n          </div>\n        </div>\n        ";
    }
    $form = "\n      <script>\n        \$(function(){\n          {$make_option_js}\n          \$('#myForm').bind('submit', function() {\n            \$.ajax({\n              type : 'POST',\n              cache : false,\n              url : 'ajax.php',\n              data : \$(this).serializeArray(),\n              success: function(data) {\n                if(\$('#newTitle').val()!=''){\n                  \$('#albumTitle{$csn}').parent().addClass('outline');\n                  \$('#albumTitle{$csn}').text(\$('#newTitle').val());\n                }\n\n                \$.fancybox.close();\n                location.reload();\n              }\n            });\n            return false;\n          });\n        })\n\n\n        function make_option(menu_name , num , of_csn , def_csn){\n          \$('#'+menu_name+num).show();\n          \$.post('ajax_menu.php',  {'of_csn': of_csn , 'def_csn': def_csn} , function(data) {\n            \$('#'+menu_name+num).html(\"<option value=''>/</option>\"+data);\n          });\n\n          \$('.'+menu_name).change(function(){\n          var menu_id= \$(this).attr('id');\n          var len=menu_id.length-1;\n          var next_num = Number(menu_id.charAt(len))+1\n            var next_menu = menu_name + next_num;\n            \$.post('ajax_menu.php',  {'of_csn': \$('#'+menu_id).val()} , function(data) {\n              if(data==''){\n                \$('#'+next_menu).hide();\n              }else{\n                \$('#'+next_menu).show();\n                \$('#'+next_menu).html(\"<option value=''>/</option>\"+data);\n              }\n\n            });\n          });\n        }\n      </script>\n\n      <form action='' method='post' id='myForm' style='width:600px;' class='form-horizontal' role='form'>\n        {$form_col}\n      </form>";
    return $form;
}
Example #3
0
    $xoopsTpl->assign("csn", $csn);
}
/*-----------執行動作判斷區----------*/
$op = system_CleanVars($_REQUEST, 'op', '', 'string');
$sn = system_CleanVars($_REQUEST, 'sn', 0, 'int');
$uid = system_CleanVars($_REQUEST, 'uid', 0, 'int');
$show_uid = system_CleanVars($_REQUEST, 'show_uid', 0, 'int');
if (!empty($csn) and !empty($passwd)) {
    $_SESSION['tadgallery'][$csn] = $passwd;
}
switch ($op) {
    case "passwd_form":
        passwd_form($csn, $cate['title']);
        break;
    default:
        list_photos($csn, $show_uid);
        break;
}
/*-----------秀出結果區--------------*/
$arr = get_tadgallery_cate_path($csn);
$jBreadCrumbPath = breadcrumb($csn, $arr);
$xoopsTpl->assign("path", $jBreadCrumbPath);
$author_menu = get_all_author($show_uid);
$xoopsTpl->assign("author_option", $author_menu);
$xoopsTpl->assign("toolbar", toolbar_bootstrap($interface_menu));
if ($xoTheme) {
    $xoTheme->addStylesheet('modules/tadgallery/module.css');
    $xoTheme->addStylesheet('modules/tadgallery/class/jquery.thumbs/jquery.thumbs.css');
    $xoTheme->addScript('modules/tadgallery/class/jquery.thumbs/jquery.thumbs.js');
}
include_once XOOPS_ROOT_PATH . '/footer.php';
Example #4
0
function view_pic($sn = "")
{
    global $xoopsDB, $xoopsUser, $xoopsModule, $xoopsModuleConfig, $xoopsTpl, $xoTheme;
    $tadgallery = new tadgallery();
    //判斷是否對該模組有管理權限,  若空白
    if ($xoopsUser) {
        $nowuid = $xoopsUser->getVar('uid');
        $module_id = $xoopsModule->getVar('mid');
        $isAdmin = $xoopsUser->isAdmin($module_id);
    } else {
        $isAdmin = false;
        $nowuid = "";
    }
    $sql = "select * from " . $xoopsDB->prefix("tad_gallery") . " where sn='{$sn}'";
    $result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'], 3, mysql_error());
    $all = $xoopsDB->fetchArray($result);
    //$csn,$title,$description,$filename,$size,$type,$width,$height,$dir,$uid,$post_date,$counter,$exif,$good,$tag,$photo_sort
    foreach ($all as $k => $v) {
        ${$k} = $v;
        $xoopsTpl->assign($k, $v);
    }
    $photo_s = $tadgallery->get_pic_url($dir, $sn, $filename, "s");
    $photo_m = $tadgallery->get_pic_url($dir, $sn, $filename, "m");
    $photo_l = $tadgallery->get_pic_url($dir, $sn, $filename);
    $xoopsTpl->assign("photo_s", $photo_s);
    $xoopsTpl->assign("photo_m", $photo_m);
    $xoopsTpl->assign("photo_l", $photo_l);
    if (!empty($csn)) {
        $ok_cat = $tadgallery->chk_cate_power();
        $cate = $tadgallery->get_tad_gallery_cate($csn);
        if (!in_array($csn, $ok_cat)) {
            redirect_header("index.php?csn={$csn}&op=passwd_form", 3, sprintf(_TADGAL_NO_PASSWD_CONTENT, $cate['title']));
            exit;
        }
        $sql = "select * from " . $xoopsDB->prefix("tad_gallery") . " where csn='{$csn}' order by photo_sort , post_date";
        $result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'], 3, mysql_error());
        $slides1 = $slides2 = "";
        $i = 0;
        $start = false;
        while ($all = $xoopsDB->fetchArray($result)) {
            if ($sn == $all['sn']) {
                $start = true;
                $i = 0;
            }
            if ($start) {
                $slides1[$i]['sn'] = $all['sn'];
                $slides1[$i]['photo'] = $tadgallery->get_pic_url($all['dir'], $all['sn'], $all['filename']);
                $slides1[$i]['description'] = strip_tags($all['description']);
                $slides1[$i]['thumb'] = $tadgallery->get_pic_url($all['dir'], $all['sn'], $all['filename'], 's');
            } else {
                $slides2[$i]['sn'] = $all['sn'];
                $slides2[$i]['photo'] = $tadgallery->get_pic_url($all['dir'], $all['sn'], $all['filename']);
                $slides2[$i]['description'] = strip_tags($all['description']);
                $slides2[$i]['thumb'] = $tadgallery->get_pic_url($all['dir'], $all['sn'], $all['filename'], 's');
            }
            $i++;
        }
    }
    $xoopsTpl->assign("slides1", $slides1);
    $xoopsTpl->assign("slides2", $slides2);
    //找出上一張或下一張
    $pnp = get_pre_next($csn, $sn);
    $xoopsTpl->assign("next", $pnp['next']);
    $xoopsTpl->assign("back", $pnp['pre']);
    $arr = get_tadgallery_cate_path($csn);
    $jBreadCrumbPath = breadcrumb($csn, $arr);
    $xoopsTpl->assign("path", $jBreadCrumbPath);
    if (!file_exists(XOOPS_ROOT_PATH . "/modules/tadtools/fancybox.php")) {
        redirect_header("index.php", 3, _MA_NEED_TADTOOLS);
    }
    include_once XOOPS_ROOT_PATH . "/modules/tadtools/fancybox.php";
    $fancybox = new fancybox('.fancybox');
    $fancybox_code = $fancybox->render(false);
    $xoopsTpl->assign('fancybox_code', $fancybox_code);
    $title = empty($title) ? $filename : $title;
    $div_width = $xoopsModuleConfig['thumbnail_m_width'] + 30;
    $size_txt = sizef($size);
    if ($uid == $nowuid or $isAdmin) {
        $xoopsTpl->assign('show_del', 1);
        //$del_btn="<a src='javascript:delete_tad_gallery_func($sn)' title='"._TADGAL_DEL_PIC."' class='btn btn-danger'>"._TAD_DEL."</a>";
        $xoopsTpl->assign('good', $good);
        $del_js = "\n    <script>\n    function delete_tad_gallery_func(sn){\n      var sure = window.confirm('" . _TAD_DEL_CONFIRM . "');\n      if (!sure)  return;\n      location.href=\"{$_SERVER['PHP_SELF']}?op=delete_tad_gallery&sn=\" + sn;\n    }\n    </script>";
    } else {
        $del_btn = $admin_tool = $del_js = "";
    }
    $xoopsTpl->assign('del_btn', $del_btn);
    //秀出各種尺寸圖示
    if ($xoopsModuleConfig['show_copy_pic']) {
        $xoopsTpl->assign("photo_s", $photo_s);
        $xoopsTpl->assign("photo_m", $photo_m);
        $xoopsTpl->assign("photo_l", $photo_l);
        $xoopsTpl->assign("description", $description);
        $xoopsTpl->assign("sel_size", 1);
    } else {
        $xoopsTpl->assign("sel_size", 0);
    }
    //推文工具
    $push = push_url($xoopsModuleConfig['use_social_tools']);
    $xoopsTpl->assign("push", $push);
    $xoopsTpl->assign("pic_toolbar", $xoopsModuleConfig['pic_toolbar']);
    $xoopsTpl->assign("thumb_slider", $xoopsModuleConfig['thumb_slider']);
    //計數器
    add_tad_gallery_counter($sn);
    //地圖部份
    $info = explode("||", $exif);
    foreach ($info as $v) {
        $exif_arr = explode("=", $v);
        $exif_arr[1] = str_replace("&#65533;", "", $exif_arr[1]);
        $bb = "\$photoexif{$exif_arr[0]}=\"{$exif_arr[1]}\";";
        if (empty($exif_arr[0])) {
            continue;
        }
        @eval($bb);
    }
    $latitude = $photoexif['GPS']['latitude'];
    $longitude = $photoexif['GPS']['longitude'];
    $xoopsTpl->assign("latitude", $latitude);
    $xoopsTpl->assign("longitude", $longitude);
    $jquery_path = get_jquery(true);
    $xoopsTpl->assign("jquery", $jquery_path);
    $xoopsTpl->assign("path", $jBreadCrumbPath);
    $xoopsTpl->assign("del_js", $del_js);
    $xoopsTpl->assign("div_width", $div_width);
    $facebook_comments = facebook_comments($xoopsModuleConfig['facebook_comments_width'], 'tadgallery', 'view.php', 'sn', $sn);
    $xoopsTpl->assign("facebook_comments", $facebook_comments);
    $fb_tag = "\n      <meta property=\"og:title\" content=\"{$title}\" />\n      <meta property=\"og:description\" content=\"{$description}\" />\n      <meta property=\"og:image\" content=\"" . $tadgallery->get_pic_url($dir, $sn, $filename, "m") . "\" />\n      ";
    $xoopsTpl->assign("xoops_module_header", $fb_tag);
    $xoopsTpl->assign("xoops_pagetitle", $title);
    if (is_object($xoTheme)) {
        $xoTheme->addMeta('meta', 'keywords', $title);
        $xoTheme->addMeta('meta', 'description', $description);
    } else {
        $xoopsTpl->assign('xoops_meta_keywords', 'keywords', $title);
        $xoopsTpl->assign('xoops_meta_description', $description);
    }
}