Giter Site home page Giter Site logo

haschek / pubwichfork Goto Github PK

View Code? Open in Web Editor NEW

This project forked from remi/pubwich

112.0 16.0 27.0 764 KB

PubwichFork is an open-source PHP Web application that allows you to aggregate your published data from multiple websites and social services into a single HTML page.

Home Page: http://eye48.com/go/pubwichfork

License: Other

PHP 94.15% CSS 4.56% HTML 1.29%
social-media social-web aggregator profile

pubwichfork's Introduction

About PubwichFork

PubwichFork is an open-source PHP web application that allows you to aggregate your published data from multiple websites and services into a single HTML page.

PubwichFork is an improved version of the original Pubwich application, since Pubwich is not actively maintained anymore by the original author. PubwichFork fixes several bugs and enables filtering of the data streams.

Installation

If you need to upgrade from your current Pubwich(Fork) install, please check the upgrading section in this file.

Installing PubwichFork 2.9+

  1. Get it from the repository and change to development branch:

    $ git clone https://github.com/haschek/PubwichFork.git
    $ cd PubwichFork
    $ git pull
    
  2. Install necessary vendor libraries, you need to install Bower before you can use it for that step:

    $ bower install
    
  3. Change the permissions on the cache directory to make it writeable for for you and the user group of the webserver, e.g. on Ubuntu:

    $ sudo chown youruser:www-data usr/cache/
    $ sudo chmod ug+w usr/cache/
    

    It may be easier to allow writing to all (777) but this is not recommended for security reasons.

  4. Duplicate usr/configuration/config.sample.php to usr/configuration/config.php. (Optional: if you want to use a custom theme, duplicate app/themes/default to usr/themes/your_theme_name and edit the PUBWICH_THEME constant in usr/configuration/config.php to 'your_theme_name'.

  5. Edit the newly created config.php to fill the blank spaces with your informations (API keys, usernames, site’s URL, etc.) and to modify the arguments passed to Pubwich::setServices(). See the Service configuration section of this file or read the Service Class manual.

Everything should be working now.

Upgrading

Currently we have 3 different Pubwich(Fork) development branches:

  1. 1.x: the first official Pubwich application, the last official release was Pubwich 1.5 - Pubwich is not maintained anymore since 2011

  2. 2.1: May 2011 Pubwich was forked, community commits and fixes were merged in, and it was extended (e.g. adding filters and improved caching options, responsive default theme). Around 80 commits were made since then. The current stable release is PubwichFork 2.1

  3. 2.9+: the current version, an intermediate release to 3.x that is not finished yet. Nonetheless, it includes a lot of changes: project folders were restructured, usage process of vendor libraries was changed, the template system has been improved and the default theme is updated and mobile first now.

Upgrade from Pubwich 1.x to PubwichFork 2.0 and 2.1

Last official Pubwich release was 1.5., please remember that important changes were made in Pubwich 1.4., e.g. Twitter OAuth support and the new template engine. Please check the old Pubwich manual about upgrading if you are still using a Pubwich install before version 1.4.

Upgrading from Pubwich 1.5+ to PubwichFork 2.1 should be simple:

  1. Backup your cfg/config.php and your customized user theme.

  2. Install PubwichFork and re-configure it, using your configuration backup.

  3. Copy your theme folder to themes again.

Usually your old config file and user theme should work with PubwichFork. If not, please report bugs.

Upgrade from PubwichFork 2.1 to 2.9+

  1. Backup your PubwichFork installation.

  2. Install PubwichFork 3.x and copy your configuration backup file to usr/configuration/config.php.

  3. Copy your theme folder to usr/themes.

  4. If you developed own service classes, copy them to usr/services.

PubwichFork 2.9+ is compatible to configurations and filters from 2.1. The old template system is now deprecated but it is still supported in 2.9+

Service configuration

All services are configured in the config.php file, usually a service looks like this:

array(
    'Flickr', // service name
    'photos', // service id
    array(
        'method' => 'FlickrUser',
        'title' => 'Flick<em>r</em>',
        'description' => 'latest photos',
        'total' => 16,
        'key' => '________',
        'userid' => '________',
        'username' => '__________',
        'row' => 4,
    )
)

In this example Flickr is the service name, photos is the service ID and the inner array is the service configuration. Some parameters can be used for all services:

  • title → box title
  • description → box description
  • total → number of items to display
  • cache_limit → cache invalidation time in seconds

The simplest and wide supported Feed service can be configured by additional parameters:

  • url → URI of the feed
  • contenttype → either application/rss+xml or application/atom+xml
  • link → the URI of the website the feed is used for

There are several other service classes, e.g. for Facebook, Twitter, Youtube, Vimeo, Flickr, Reddit, GNUsocial and more. For further info please read the Service documentation.

Custom themes and templates

Themes contain all main and sub templates for page chrome, layout containers, channel boxes, list items; and the public graphics and stylesheets for the layout. Your theme folder must be in usr/themes/.

All templates are written in simple Mustache syntax, all main and sub templates are in yourtheme/templates folder, using .mustache as file extension.

For further information please read usr/themes/README.md or the manual about how to develop custom themes and user templates.

Custom filters

TODO

pubwichfork's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pubwichfork's Issues

Installed the dev and ran into error messages

I've just installed a fresh copy of the development version of pubwich fork to
https://vbachem.de/pubwich2/
My Php-Version is 7.1.7

Now I get the following Warnigs and Erros:
Warning: require_once(Cache/Lite.php): failed to open stream: No such file or directory in /var/www/virtual/bachem/html/pubwich2/app/core/Pubwich.php on line 107

Fatal error: require_once(): Failed opening required 'Cache/Lite.php' (include_path='/var/www/virtual/bachem/html/pubwich2/usr:/var/www/virtual/bachem/html/pubwich2/app::::.:/package/host/localhost/php-7.1.7/lib/php') in /var/www/virtual/bachem/html/pubwich2/app/core/Pubwich.php on line 107

I know it is a dev-version. But do you have any idea how to solve this?

PubwichFork Demo

Install a public PubwichFork instance somewhere to demo it, use project feeds for it.

Documentation

Provide wiki with documentation about all ald and new features (e.g. filters).

WordPress Plugin

Hi,

I really would like to integrate PubwichFork into several selfhosted WordPress Sites - so I would appreciate to have a plugin for that...

Thanks, cheers
Elke

Improve Documentation

I've just installed the DEV Version on my uberspace.de hosting and had some problems.
I would like to help improving the dokumentation.

The instagram service needs some work also:
#41
Documentation and code has to chance because instgram changed the authentification-service.

Use RSS/Feed library

Right now, Pubwich only uses native PHPAPI to access feed data what is complicated. Use a well established PHP library for this, that's easier.

Strict errors in library and legacy code

Notice: Use of undefined constant Pubwich - assumed 'Pubwich' in /var/www/example.com/www/pubwichfork/lib/Services/Twitter.php on line 22

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Notice: Undefined offset: 2 in /var/www/example.com/www/pubwichfork/lib/Services/Twitter.php on line 57

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Strict Standards: call_user_func() expects parameter 1 to be a valid callback, non-static method Pubwich::json_decode() should not be called statically in /var/www/example.com/www/pubwichfork/lib/Services/Service.php on line 191

Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in /var/www/example.com/www/pubwichfork/lib/PEAR/Cache/Lite.php on line 549

Implement Tumblr service

I'm using the rss feed. But a service fetching specifics tumblr blog posts and displaying them given their type (images, videos, links, text...) would be great.

Errors

I get the following messages:

Warning: Invalid argument supplied for foreach() in /var/www/html/web39/html/pubwich/lib/Pubwich.php on line 381

Warning: Invalid argument supplied for foreach() in /var/www/html/web39/html/pubwich/lib/Pubwich.php on line 460

It's a fresh install of 2.0rc:
http://www.vbachem.de/pubwich/

Improve caching

Alter caching behaviour to improve all site performance:

  • implement usage of output caches, not only data caches (config own cache invalidation times for each type of cache)
  • implement a post output process, so that a invalid output cache can be used and updated after the output for the next request
  • implement a displacement of the cache invalidation time by a random time shift in a configured range, this way not all data caches must be updated at one time

Flickr service, image sizes

In the config.php is a comment at the flickr service that you can use different sizes:
'size' => 's', // s|q|t|m|n|z|c
If I change the size value in my config.php, the script is loading bigger images, but the imagessize in Pubwich ist not getting bigger.
Probably there is some CSS missing for that function to work.

At the moment I have the value 'q' wich serves images with 150x150 pixel. They are scaled to 102x102 Pixel:
https://www.vbachem.de/PubwichFork/

Error: failed to delete buffer and headers already sent

On my site https://www.vbachem.de/PubwichFork/ I get several error messages.
Perhaps the script is not compatible with never php versions. I've tried PHP 7.1, 7.2, 7.3. Now active is 7.4:

"Deprecated: Function get_magic_quotes_runtime() is deprecated in /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php on line 757

Notice: ob_end_clean(): failed to delete buffer. No buffer to delete in /home/www/vbachem.de/PubwichFork/app/core/Pubwich.php on line 180

Warning: Cannot modify header information - headers already sent by (output started at /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php:757) in /home/www/vbachem.de/PubwichFork/app/core/Pubwich.php on line 181

Warning: Cannot modify header information - headers already sent by (output started at /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php:757) in /home/www/vbachem.de/PubwichFork/app/core/Pubwich.php on line 182

Warning: Cannot modify header information - headers already sent by (output started at /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php:757) in /home/www/vbachem.de/PubwichFork/app/core/Pubwich.php on line 183"

"Warning: Cannot modify header information - headers already sent by (output started at /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php:757) in /home/www/vbachem.de/PubwichFork/app/core/Pubwich.php on line 188

Deprecated: Function get_magic_quotes_runtime() is deprecated in /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php on line 757

Deprecated: implode(): Passing glue string after array is deprecated. Swap the parameters in /home/www/vbachem.de/PubwichFork/app/vendor/simplepie/library/SimplePie/Parse/Date.php on line 544

Deprecated: implode(): Passing glue string after array is deprecated. Swap the parameters in /home/www/vbachem.de/PubwichFork/app/vendor/simplepie/library/SimplePie/Parse/Date.php on line 545

Deprecated: Function get_magic_quotes_runtime() is deprecated in /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php on line 757

Deprecated: Function get_magic_quotes_runtime() is deprecated in /home/www/vbachem.de/PubwichFork/app/vendor/pear-cache-lite/Cache/Lite.php on line 757"

Umstellung auf Version 2

Ich habe meine Pubwich 1.x Installation
http://www.vbachem.de/pubwich/
testweise auf die Version 2.0 aktualisiert:
http://www.vbachem.de/pubwich2/

Übernommen habe ich von Hand die Einstellung in der Config-Datei.
Alle anderen Änderungen habe ich einmal bewusst heraus gelassen, dass wir sehen wo Anpassungen nötig sind, die du vielleicht in das nächste Release einbauen kannst:

  • Twitter: Formatierung und Verlinkung stimmt nicht
  • Twitter eigener Benutzername sollte nicht auftauchen
  • 500px Bilder einbinden
  • Die Größe der Flickr-Bilder kann ich wahrscheinlich im Theme ändern, oder?
  • Eigener Blog: Hier wäre das zum Beitrag gehörende Foto schön, wenn es mit angezeigt würde.

Lässt sich 500px auch so einbinden wir der Flickr-Block?
Funktioniert die Einbindung von Picasa-Fotos?

Viele Grüße
Valentin

Activity Stream

Add a activity stream module what is a merge of the activated module data feeds, this made it possible to present recent content (activity stream) beside featured older content (e.g. the latest flickr pics what might be one year old).

Restructure project

Separate libraries, user configurations/extentions/themes, and core files. If possible use submodules for libraries.

facebook: Cannot query users by their username

i do have the latest version installed.
twitter works perfect, but facebook shows:
An error occured with the FacebookPage API. The data is therefore unavailable.

apache2 error log shows:
PHP Warning: file_get_contents(https://graph.facebook.com/v2.4/MYNAME/posts?fields=id,status_type,type,story,message,created_time,picture,full_picture,name,caption,link&amp;limit=5&amp;access_token=MYTOKEN): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found\r\n in /var/www/html/pubwichfork/app/core/FileFetcher.php on line 39

if i open the url in a browser i do get:
{ error: { message: "(#803) Cannot query users by their username (MYNAME)", type: "OAuthException", code: 803, fbtrace_id: "someID" } }

if i google for #803 it looks like the request with username is depricated since 2014. but this soft got updated in 2015. what's wrong?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.