function showFlashComponent($id)
{
    $database =& JFactory::getDBO();
    $row = new joomla_flash_uploader($database);
    $row->load($id);
    if (!$row->resize_show) {
        // no profile found or no id!
        HTML_joomla_flash_uploader::wrongId($id);
    } else {
        $uploadfolder = $row->folder;
        $user =& JFactory::getUser();
        // we check if we have a master profile!
        if ($row->master_profile == 'true') {
            if ($user->id != 0) {
                if ($row->master_profile_mode == 'id') {
                    $uploadfolder = $uploadfolder . '/' . $user->id;
                } else {
                    if ($row->master_profile_lowercase == 'true') {
                        $uploadfolder = $uploadfolder . '/' . strtolower($user->username);
                    } else {
                        $uploadfolder = $uploadfolder . '/' . $user->username;
                    }
                }
                // we check if the folder exists - if not it is created!
                if (!file_exists($uploadfolder) && $uploadfolder != "") {
                    mkdir($uploadfolder);
                    // if the copy directory exists we copy everything!
                    $extra_dir = "components/com_joomla_flash_uploader/default";
                    if (file_exists($extra_dir)) {
                        JFUHelper::dir_copy($extra_dir, $uploadfolder);
                    }
                }
            } else {
                HTML_joomla_flash_uploader::noUser($id);
                return;
            }
        }
        // we go back to the main folder! path has to be relativ to the tfu upload folder!
        if ($uploadfolder == "") {
            $folder = "./../../../..";
        } else {
            $folder = "./../../../../" . $uploadfolder;
        }
        JFUHelper::setJFUSession($row, $folder);
        $_SESSION["TFU_FILE_CHMOD"] = JFUHelper::getVariable($database, 'file_chmod');
        $_SESSION["TFU_DIR_CHMOD"] = JFUHelper::getVariable($database, 'dir_chmod');
        unset($_SESSION["IS_ADMIN"]);
        $_SESSION["IS_FRONTEND"] = "TRUE";
        if ($user->id != 0) {
            $_SESSION["TFU_USER"] = $user->username;
            $_SESSION["TFU_USER_ID"] = $user->id;
        } else {
            unset($_SESSION["TFU_USER"]);
            unset($_SESSION["TFU_USER_ID"]);
        }
        // we check if the flash should be included with js oder the object tag
        $use_js_include = JFUHelper::check_js_include($database);
        store_temp_session();
        JFUHelper::fixSession();
        HTML_joomla_flash_uploader::showFlash($row, $uploadfolder, $use_js_include, false);
    }
}
Exemplo n.º 2
0
 function setJFUSession($row, $folder, $database)
 {
     // new 2.11.x - I will move all tfu settings to one session list!
     $tfu_param = array();
     // we put ALL parameters to the session that it is available in TFU
     foreach (get_object_vars($row) as $key => $val) {
         $tfu_param[strtoupper($key)] = $val;
     }
     $_SESSION["TFU"] = $tfu_param;
     $_SESSION['TFU']["TFU_FOLDER"] = $folder;
     $_SESSION['TFU']["FIX_UTF8"] = trim($row->fix_utf8);
     $_SESSION['TFU']["NOT_EMAIL"] = $row->upload_notification_email;
     $_SESSION['TFU']["NOT_EMAIL_FROM"] = $row->upload_notification_email_from;
     $_SESSION['TFU']["NOT_EMAIL_SUBJECT"] = $row->upload_notification_email_subject;
     $_SESSION['TFU']["NOT_EMAIL_TEXT"] = $row->upload_notification_email_text;
     $_SESSION['TFU']["ENABLE_SETTING"] = $row->enable_setting;
     // Global settings!
     $_SESSION['TFU']["FILE_CHMOD"] = JFUHelper::getVariable($database, 'file_chmod');
     $_SESSION['TFU']["DIR_CHMOD"] = JFUHelper::getVariable($database, 'dir_chmod');
     $_SESSION['TFU']["ENABLE_UPLOAD_DEBUG"] = JFUHelper::getVariable($database, 'enable_upload_debug');
     $_SESSION['TFU']["ENHANCED_DEBUG"] = JFUHelper::getVariable($database, 'enhanced_debug');
     $_SESSION['TFU']["CHECK_IMAGE_MAGIC"] = JFUHelper::getVariable($database, 'check_image_magic');
 }
Exemplo n.º 3
0
function showFlashPlugin($id, $twgpath) {
   global $prefix_path;

     $database = JFactory::getDBO();
	 $row = new joomla_flash_uploader($database);
	 $row->load($id);
	 if (!$row->resize_show) { // no profile found or no id!
	    return HTML_joomla_flash_uploader::wrongId($id, true);
	 } else {
	   $uploadfolder = $row->folder;
	   $uploadfolder_base = $uploadfolder;

	   $user = JFactory::getUser();
        // we check if we have a master profile!
       if ($row->master_profile == 'true') {
	      if ($user->id != 0 || $row->master_profile_mode == 'ip') {
               if ($row->master_profile_mode == 'id') {
                    $_SESSION["s_user"] = $user->id;
                    $uploadfolder = $uploadfolder . '/' . $user->id;
                } else if ($row->master_profile_mode == 'ip') {
                    $uploadfolder = $uploadfolder . '/' . $_SERVER['REMOTE_ADDR'];
                } else if ($row->master_profile_mode == 'group') {
                    $group = JFUHelper::getHighestGroupName($database, $user->groups);
                    
                    if ($row->master_profile_lowercase == 'true') {
                        $normalizeSpaces=true;
                        $group = normalizeFileNames($group);      
                    } 
                     $uploadfolder = $uploadfolder . '/' . $group;
                 } else {
                    if ($row->master_profile_mode == 'login') {
                        $uname = $user->username;
                    } else {
                        $uname = $user->name;
                    }
                    $_SESSION["s_user"] = $uname;
                    if ($row->master_profile_lowercase == 'true') {
                        $normalizeSpaces=true;
                        $uname = normalizeFileNames($uname);
                    }
                    $uploadfolder = $uploadfolder . '/' . $uname;  
                }
              // we check if the folder exists - if not it is created!
              if (!file_exists($uploadfolder) && $uploadfolder != "") {
                 $dir_chmod = JFUHelper::getVariable($database, 'dir_chmod'); 
                 $ftp_enable = $row->ftp_enable;  
                 if (isset($ftp_enable) && $ftp_enable == 'true') {
                        $ftp_host = $row->ftp_host; 
                        $ftp_port = $row->ftp_port; 
                        $ftp_user = $row->ftp_user; 
                        $ftp_pass = $row->ftp_pass; 
                        $ftp_root = $row->ftp_root;                                  
                        $ftp_createdir = $uploadfolder;
                        $conn_id = ftp_connect($ftp_host, $ftp_port); 
                        $login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);                         
                        ftp_chdir($conn_id, $ftp_root); 
                        $result = ftp_mkdir ($conn_id , $ftp_createdir);
                        if ($result && $dir_chmod != 0) {
                          @ftp_chmod($conn_id, $dir_chmod, $ftp_createdir);
                        }
                        ftp_close($conn_id);
                  } else {
                      $result = mkdir($uploadfolder);  
                      if ($result && $dir_chmod != 0) {
                        @chmod($uploadfolder, $dir_chmod);
                      }
                 }
                // if the copy directory exists we copy everything!
                $extra_dir = "components/com_jfuploader/default";
                if (file_exists($extra_dir)) {
                  JFUHelper::dir_copy($extra_dir, $uploadfolder);
                } 
              }
          } else {
              return HTML_joomla_flash_uploader::noUser($id,true);          
          }
       }
       
       if (file_exists("components/com_jfuploader/tfu/tfu_helper.php")) {
         $prefix_path = '';
         $prefix_dir_path = '';
       } else {
         $prefix_path = 'administrator/';
         $prefix_dir_path = '../';
       }      
	     // we go back to the main folder!
       if ($uploadfolder == "") {
         $folder =  './'.$prefix_dir_path.'../../..';
       } else {
         $folder =  './'.$prefix_dir_path.'../../../' . $uploadfolder;
       }
       JFUHelper::setJFUSession($row, $folder, $database); 
       unset($_SESSION["IS_ADMIN"]);
       $_SESSION["IS_FRONTEND"] = "TRUE";
       if ($user->id != 0) {
         $_SESSION["TFU_USER"] = $user->username;
         $_SESSION["TFU_USER_ID"] = $user->id;
         $_SESSION["TFU_USER_NAME"] = $user->name;
         $_SESSION["TFU_USER_EMAIL"] = $user->email;
         JFUHelper::setContactDetailsToSession($user->id);
       } else {
         unset($_SESSION['TFU_USER']);
         unset($_SESSION['TFU_USER_ID']);
         unset($_SESSION['TFU_USER_NAME']);
         unset($_SESSION['TFU_USER_EMAIL']);
         unset($_SESSION['TFU_USER_CONTACT']);
       }
       
        // we check if the flash should be included with js oder the object tag
       $use_js_include = JFUHelper::check_js_include($database);
       $jfu_config['idn_url']= JFUHelper::getVariable($database, 'idn_url');     
             
       store_temp_session();
       JFUHelper::fixSession();
       
       $thumbnailflash = '';
       if ($twgpath != '') {
         $thumbnailflash = $this->getFlashContent($twgpath, $uploadfolder,$use_js_include);
       }
       return  HTML_joomla_flash_uploader::showFlash( $row, $uploadfolder, $use_js_include, $jfu_config, true ) . $thumbnailflash;
	 }	 
}
Exemplo n.º 4
0
 function showFlashComponent($id, $user, $editor_plugin, $block_type, $jfu_params)
 {
     global $prefix_dir_path, $prefix_path;
     $database =& JFactory::getDBO();
     $row = new joomla_flash_uploader($database);
     $row->load($id);
     if (!$row->resize_show) {
         // no profile found or no id!
         HTML_joomla_flash_uploader::wrongId($id);
     } else {
         $uploadfolder = $row->folder;
         $uploadfolder_base = $uploadfolder;
         // we check if we have a master profile!
         if ($row->master_profile == 'true') {
             if ($user->id != 0 || $row->master_profile_mode == 'ip') {
                 if ($row->master_profile_mode == 'id') {
                     $_SESSION["s_user"] = $user->id;
                     $uploadfolder = $uploadfolder . '/' . $user->id;
                 } else {
                     if ($row->master_profile_mode == 'ip') {
                         $uploadfolder = $uploadfolder . '/' . $_SERVER['REMOTE_ADDR'];
                     } else {
                         if ($row->master_profile_mode == 'group') {
                             $group = JFUHelper::getHighestGroupName($database, $user->groups);
                             if ($row->master_profile_lowercase == 'true') {
                                 $normalizeSpaces = true;
                                 $group = normalizeFileNames($group);
                             }
                             $uploadfolder = $uploadfolder . '/' . $group;
                         } else {
                             if ($row->master_profile_mode == 'login') {
                                 $uname = $user->username;
                             } else {
                                 $uname = $user->name;
                             }
                             $_SESSION["s_user"] = $uname;
                             if ($row->master_profile_lowercase == 'true') {
                                 $normalizeSpaces = true;
                                 $uname = normalizeFileNames($uname);
                             }
                             $uploadfolder = $uploadfolder . '/' . $uname;
                         }
                     }
                 }
                 // we check if the folder exists - if not it is created!
                 if (!file_exists($uploadfolder) && $uploadfolder != "") {
                     $dir_chmod = JFUHelper::getVariable($database, 'dir_chmod');
                     $ftp_enable = $row->ftp_enable;
                     if (isset($ftp_enable) && $ftp_enable == 'true') {
                         $ftp_host = $row->ftp_host;
                         $ftp_port = $row->ftp_port;
                         $ftp_user = $row->ftp_user;
                         $ftp_pass = $row->ftp_pass;
                         $ftp_root = $row->ftp_root;
                         $ftp_createdir = $uploadfolder;
                         $conn_id = ftp_connect($ftp_host, $ftp_port);
                         $login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);
                         ftp_chdir($conn_id, $ftp_root);
                         $result = ftp_mkdir($conn_id, $ftp_createdir);
                         if ($result && $dir_chmod != 0) {
                             @ftp_chmod($conn_id, $dir_chmod, $ftp_createdir);
                         }
                         ftp_close($conn_id);
                     } else {
                         $result = mkdir($uploadfolder);
                         if ($result && $dir_chmod != 0) {
                             @chmod($uploadfolder, $dir_chmod);
                         }
                     }
                     // if the copy directory exists we copy everything!
                     $extra_dir = "components/com_jfuploader/default";
                     if (file_exists($extra_dir)) {
                         JFUHelper::dir_copy($extra_dir, $uploadfolder);
                     }
                 }
             } else {
                 HTML_joomla_flash_uploader::noUser($id);
                 return;
             }
         }
         // we go back to the main folder! path has to be relativ to the tfu upload folder!
         if ($uploadfolder == "") {
             $folder = './' . $prefix_dir_path . '../../..';
         } else {
             $folder = './' . $prefix_dir_path . '../../../' . $uploadfolder;
         }
         JFUHelper::setJFUSession($row, $folder, $database);
         unset($_SESSION["IS_ADMIN"]);
         $_SESSION["IS_FRONTEND"] = "TRUE";
         if ($user->id != 0) {
             $_SESSION["TFU_USER"] = $user->name;
             $_SESSION["TFU_USER_ID"] = $user->id;
             $_SESSION["TFU_USER_NAME"] = $user->username;
             $_SESSION["TFU_USER_EMAIL"] = $user->email;
             JFUHelper::setContactDetailsToSession($user->id);
         } else {
             unset($_SESSION['TFU_USER']);
             unset($_SESSION['TFU_USER_ID']);
             unset($_SESSION['TFU_USER_NAME']);
             unset($_SESSION['TFU_USER_EMAIL']);
             unset($_SESSION['TFU_USER_CONTACT']);
         }
         // we check if the flash should be included with js oder the object tag
         $use_js_include = JFUHelper::check_js_include($database);
         $jfu_config['idn_url'] = JFUHelper::getVariable($database, 'idn_url');
         if (!$editor_plugin) {
             JFUHelper::fixSession();
             store_temp_session();
             HTML_joomla_flash_uploader::showFlash($row, $uploadfolder, $use_js_include, $jfu_config, false);
         } else {
             $_SESSION['TFU']['IS_JFU_PLUGIN'] = true;
             JFUHelper::fixSession();
             store_temp_session();
             // I have to set the javascript setting to update the data!
             $flash = HTML_joomla_flash_uploader::showFlash($row, $uploadfolder, $use_js_include, $jfu_config, true);
             echo '
      <style type="text/css">
        body.contentpane { background-color:#ffffff; margin-top:15px; margin-left:15px; margin-bottom:0px; overflow-y: hidden; overflow-x: hidden; line-height: 1.4;} 
        #main { padding: 0px;} 
      </style>';
             echo $flash;
             $base_path = JURI::base();
             HTML_joomla_flash_uploader::showImageSelector($base_path, $block_type, $jfu_params);
         }
     }
 }
Exemplo n.º 5
0
function showPlugins()
{
    $database = JFactory::getDBO();
    $my = JFactory::getUser();
    if (checkAccess($database, 'core.admin')) {
        $plugins = array();
        $show_hint = false;
        foreach (glob(dirname(__FILE__) . '/tfu/*_plugin.php') as $filename) {
            $name = 'Not set';
            $description = 'Not set';
            $version_plugin = 'Not set';
            $version_tfu = 'Not set';
            $content = file_get_contents($filename);
            $hits = preg_match('/(Name:)([^\\n]*)(\\n)/i', $content, $treffer);
            if ($hits != 0) {
                $name = trim($treffer[2]);
            }
            $hits = preg_match('/(Description:)([^\\n]*)(\\n)/i', $content, $treffer);
            if ($hits != 0) {
                $description = trim($treffer[2]);
            }
            $hits = preg_match('/(Version Plugin:)([^\\n]*)(\\n)/i', $content, $treffer);
            if ($hits != 0) {
                $version_plugin = trim($treffer[2]);
            }
            $hits = preg_match('/(Needed flash version:)([^\\n]*)(\\n)/i', $content, $treffer);
            if ($hits != 0) {
                $version_tfu = trim($treffer[2]);
                if (version_compare($version_tfu, JFUHelper::getVariable($database, 'version')) == 1) {
                    $version_tfu = 'style="color: #ff0000;"';
                    $show_hint = true;
                } else {
                    $version_tfu = '';
                }
            }
            $plugins[] = array(basename($filename), htmlentities($name), htmlentities($description), $version_plugin, $version_tfu);
        }
        $available = array("a_plugin", "move_plugin");
        HTML_joomla_flash_uploader::showPlugins($plugins, $show_hint);
    } else {
        HTML_joomla_flash_uploader::errorRights();
    }
}
function showConfig()
{
    $database =& JFactory::getDBO();
    $my =& JFactory::getUser();
    if (checkAccess($database, $my->usertype, 'backend_access_config')) {
        $i = 0;
        $database->setQuery("SELECT * FROM #__joomla_flash_uploader where id > 0 ORDER BY id ");
        $rows = $database->loadObjectList();
        if (count($rows) > 0) {
            foreach ($rows as $row) {
                if ($row->id == 1) {
                    $rows[$i]->resize_label = JText::_('C_ADMINS_ONLY');
                } else {
                    $database->setQuery("SELECT username FROM #__users u, #__joomla_flash_uploader_user f WHERE u.id = f.user AND f.profile =" . $row->id . " order by username");
                    $users = $database->loadObjectList("username");
                    $rows[$i]->resize_label = "<a href=\"#user\" onclick=\"return submitform('user')\">";
                    if (count($users) == 0) {
                        if ($rows[$i]->gid != "") {
                            $rows[$i]->resize_label .= JText::_('C_DEFAULT_PROFILE') . '</a>';
                        } else {
                            $rows[$i]->resize_label = JText::_('C_NO_GROUP');
                        }
                    } else {
                        $ret = array();
                        foreach ($users as $user) {
                            array_push($ret, $user->username);
                        }
                        $rows[$i]->resize_label .= implode(", ", $ret);
                        $rows[$i]->resize_label .= "</a>";
                    }
                }
                $i++;
            }
        }
        $jfu_config = array();
        $jfu_config['keep_tables'] = JFUHelper::getVariable($database, 'keep_tables');
        $jfu_config['use_js_include'] = JFUHelper::getVariable($database, 'use_js_include');
        $jfu_config['backend_access_upload'] = JFUHelper::getVariable($database, 'backend_access_upload');
        $jfu_config['backend_access_config'] = JFUHelper::getVariable($database, 'backend_access_config');
        $jfu_config['version'] = JFUHelper::getVariable($database, 'version');
        $jfu_config['file_chmod'] = JFUHelper::getVariable($database, 'file_chmod');
        $jfu_config['dir_chmod'] = JFUHelper::getVariable($database, 'dir_chmod');
        HTML_joomla_flash_uploader::listConfig($rows, $jfu_config);
    } else {
        HTML_joomla_flash_uploader::errorRights();
    }
}