prasathmani / tinyfilemanager

Single-file PHP file manager, browser and manage your files efficiently and easily with tinyfilemanager
https://tinyfilemanager.github.io
GNU General Public License v3.0
4.89k stars 1.66k forks source link

Feature Request: Enhancements and Improvements #1238

Open addy005 opened 1 day ago

addy005 commented 1 day ago

Hello! First of all, I want to say how much I appreciate your work on this tool. It's incredibly useful, and I’ve been using it as a private streaming service due to its fast performance. I have a few suggestions for potential upgrades that would make the tool even better:

1. URL Upload Reliability

The URL upload feature doesn't work consistently for me. It would be great if you could improve its reliability by incorporating tools like curl, requests, or aria2 as alternative methods for handling the uploads.

2. Copy Link Button with TinyURL Integration

A "Copy Link" button would be really helpful. This would allow users to select multiple files and copy their direct download links to the clipboard. Additionally, implementing a TinyURL shortener would make large links easier to share.

Here’s an example of how the TinyURL functionality could be added:

function shortenURLs(urls, copyToClipboard) {
    const shortUrls = [];
    let completed = 0;
    urls.forEach(url => {
        // TinyURL API request to shorten each URL
        fetch(`https://tinyurl.com/api-create.php?url=${encodeURIComponent(url)}`)
            .then(response => response.text()) // Parse response as text
            .then(shortUrl => {
                shortUrls.push(shortUrl);  // Collect the shortened URL
                completed++;  // Track how many URLs are shortened
                if (completed === urls.length) {  // Check if all URLs are processed
                    if (copyToClipboard) {
                        copyToClipboard(shortUrls.join('\n'));  // Copy all shortened URLs to clipboard
                    } else {
                        const blob = new Blob([shortUrls.join('\n')], { type: 'text/plain' });
                        const link = document.createElement('a');
                        link.href = URL.createObjectURL(blob);  // Create a downloadable text file
                        link.download = 'short-urls.txt';
                        link.click();  // Trigger file download
                    }
                }
            });
    });
}

3. Video Player Upgrades

I've been using the tool primarily for video streaming, but there are a few issues I'd love to see addressed:


Thanks again for your hard work, and I hope these suggestions are helpful! love your work.😊


prasathmani commented 1 day ago

Thank you so much for your kind words and detailed suggestions for enhancing the tool. I truly appreciate your feedback and I’m glad to hear that you find the tool helpful.