Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Facebook плейлист на споделените връзки

Featured Replies

След промяната на дизайна връзките във Facebook са леко забити и реших да си направя списък с последните връзки от приятелите ми и от моите.

Някой ако се нуждаее от подобна функционалност споделям потребителския скрипт.

// ==UserScript==
// @name            FBPlaylist
// @version         0.7.1
// @author          Asen Bozhilov 
// @license         MIT
// @description     Build playlist based on shared links by you and your friends
// @namespace 	    gm.asenbozhilov.com
// @include         http://www.facebook.com/*
// @exclude         http://www.facebook.com/?sk=messages*
// @resource loadingGif http://gm.asenbozhilov.com/fbplaylist/images/ajax-loader.gif
// ==/UserScript==


(function () {
    var 
        /**
        * Open http://www.facebook.com/posted.php?id=YOUR_FACEBOOK_ID and get the URL of your RSS feed
        **/
        MY_CHANNEL = 'http://www.facebook.com/feeds/share_posts.php?id=1618275997&viewer=1618275997&key=08b11eaedb&format=rss20', 
            
        /**
        * Open http://www.facebook.com/posted.php and get the URL of your friends RSS feed
        */ 
        FRIENDS_CHANNEL = 'http://www.facebook.com/feeds/share_friends_posts.php?id=1618275997&key=55889d9935&format=rss20',
        
        /**
        * Country code according ISO 3166
        * If country code is not correct or there is not entry for this language, the default language is English 
        */
        DEF_LANGUAGE = 'BG',
        
        /**
        * 0 - MY_CHANNEL
        * 1 - FRIENDS_CHANNEL
        */
        DEF_PLAYLIST = 1,
        
        TARGET_WIN = 'fbplaylist-win',
        
        LOADING_GIF = typeof GM_getResourceURL != 'undefined' ? GM_getResourceURL('loadingGif') : 'http://gm.asenbozhilov.com/fbplaylist/images/ajax-loader.gif'; 
    
    var LANG = {
        EN : {
           links : 'Frinds links', 
           myLinks : 'My links',
           by : 'By'     
        },
        
        BG : {
           links : 'Връзки от приятели',
           myLinks : 'Моите връзки',
           by : 'От' 
        }
    };

    var usrLang = LANG[DEF_LANGUAGE] || LANG.EN;
    
    var rightSide = document.getElementById('rightCol'),
        holder, playlist,
        title, select;

    if (rightSide) {  
        GM_addStyle(
            '#fbplaylist li a {display: block; padding: 5px 3px;}' +
            '#fbplaylistHolder {margin-bottom: 20px;}' + 
            '#fbplaylistHolder h4 {overflow: hidden;}' + 
            '#fbplaylistHolder select {width: 234px;}' + 
            '.loading-playlist {height: 100px; background: url(' + LOADING_GIF + ') no-repeat center;}'
        );        
        
        holder = document.createElement('div');
        holder.id = 'fbplaylistHolder';
        
        playlist = document.createElement('div');
        playlist.id = 'fbplaylist';
        playlist.className = 'loading-playlist';
        
        title = document.createElement('h4');
        title.className = 'uiHeader uiHeaderTopAndBottomBorder mbs uiSideHeader';
        
        select = document.createElement('select');
        select.addEventListener('change', changePlaylist, false);
        
        select.options[0] = new Option(usrLang.myLinks, MY_CHANNEL);
        select.options[1] = new Option(usrLang.links, FRIENDS_CHANNEL);
        select.options[DEF_PLAYLIST].selected = true;        
        
        title.appendChild(select);
        holder.appendChild(title);
        holder.appendChild(playlist);
        rightSide.insertBefore(holder, rightSide.firstChild);
        
        getPlaylist(DEF_PLAYLIST ? FRIENDS_CHANNEL : MY_CHANNEL);
    }    

    function getPlaylist(url) {
        var xhr = new XMLHttpRequest();
        xhr.open('GET', url, true);
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 &&  xhr.status == 200) {
                buildPlaylist(xhr.responseXML);
            }
        };
        xhr.send(null);
    }

    function buildPlaylist(xmlTree) {
        var items = xmlTree.getElementsByTagName('item'),
            item, title, 
            url, author,
            htmlCode = '<ul>';
        for (var i = 0, len = items.length; i < len; i++) {
            item = items[i];
            title = item.getElementsByTagName('title')[0].textContent;
            author = item.getElementsByTagName('author')[0].textContent;
            url = item.getElementsByTagName('description')[0].textContent.match(/<a href="([^"]+)/)[1];       
            htmlCode += '<li><a style="background-color: #' + (i % 2 == 0 ? 'FFFFFF' : 'F2F2F2')  + ';" href="' + url + '" target="' + TARGET_WIN + '" title="' + usrLang.by  + ': ' + author + '">' + title + '</a></li>';
        }
        
        playlist.className = '';
        playlist.innerHTML = htmlCode + '</ul>';
    }
    
    function changePlaylist() {
        playlist.className = 'loading-playlist';
        playlist.innerHTML = '';
        getPlaylist(this.value);       
    }
})();

Ако някой желае последните версии на този скрипт, защото смятам да направя някои добавки може да вземе скрипта от репозиторито в github.

https://github.com/abozhilov/user-scripts/blob/master/fbplaylist/FBPlaylist.user.js

Идеи за допълнителна функционалност са добре дошли. Също така някой ако има проблеми с инсталацията може да пише тук. Тествал съм го с greasemonkey 0.9.0 с Firefox 3.6 под Debian. Тествано е и с Google Chrome 5.0 пак под същата операционна система. С Opera не би следвало да има проблеми.

Редактирано от asen.bozhilov (преглед на промените)

Да попитам какво представлява самият скрипт, как се поставя и как се премахва ?

  • Автор

Ако си с Firefox, инсталираш greasemonkey: https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Записваш горния код с разширение user.js. След това го отваряш този файл с Firefox и следваш инструкциите. Иначе какво представляват потребителските скриптове: http://en.wikipedia.org/wiki/Greasemonkey Най-общо казано по този начин инжектираш скрипт в определена страница. Така можеш да променяш съдържанието, изгледа и поведението на тази страница. Архитектурата на greasemonkey е такава че при реализиране на DOMContentLoaded събитието се изпълнява зададения скрипт. Също така скриптовете от страницата и потребителските по подразбиране не интерферират един с друг. Потребителските скриптове в greasemonkey поне в последните версии се изпълняват в Sandbox, което напълно изолира скрипта от тези в страницата. Все пак има пойнтър към глобалния обект на основната страница. `unsafeWindow' http://wiki.greasespot.net/UnsafeWindow Като цяло така може да предефинираш потребителски функции в Javascript-а в основната страница. Но също така, по този начин може да си отрежеш пръстите и да отвориш дупка в сигурността. Премахването на скрипта става през greasemonkey: Manage user scripts -> Uninstall

Редактирано от asen.bozhilov (преглед на промените)

Регистрирайте се или влезете в профила си за да коментирате

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.