Skip to content

Instantly share code, notes, and snippets.

public ServiceResponse update(ServiceRequest request)
{
final UserFeedPostDAO feedPostDAO = UserFeedPostDAO.newInstance();
final UserFeedPost userFeedPost = (UserFeedPost) request.getDataAsObject();
final UserFeedPost dbFeedPost = feedPostDAO.findByID(userFeedPost.getId());
Integer sessionUserID = request.getUser().getUserId();
List<Integer> roleList = Permission.getRolesByUID(sessionUserID);
updatedSummary(userFeedPost);
if (!Permission.isPostOwner(sessionUserID, userFeedPost.getUserId())) {
return validatePermittedGroupAndGetUpdateResponse(feedPostDAO, userFeedPost, roleList);
@sasajib
sasajib / Application.java
Created March 3, 2016 12:48 — forked from nraychaudhuri/Application.java
Using custom multipart body parser that uses specified dir to save files
package controllers;
import java.io.File;
import java.util.List;
import play.mvc.BodyParser;
import play.mvc.BodyParser.Of;
import play.mvc.Controller;
import play.mvc.Http.MultipartFormData;
import play.mvc.Http.MultipartFormData.FilePart;
# coding=UTF-8
from __future__ import division
import re
# This is a naive text summarization algorithm
# Created by Shlomi Babluki
# April, 2013
class SummaryTool(object):
@sasajib
sasajib / gist:3447fd5ba5ebfa9a6517
Created September 22, 2015 23:58 — forked from jiggneshhgohel/gist:ade2c57d03c4ad895e82
Adobe Air 2.6 Installation Steps on Ubuntu 14.04 (64-bit)
@sasajib
sasajib / angularjs-providers-explained.md
Last active September 2, 2015 02:35 — forked from demisx/angularjs-providers-explained.md
AngularJS Providers: Constant/Value/Service/Factory/Decorator/Provider
Provider Singleton Instantiable Configurable
Constant Yes No No
Value Yes No No
Service Yes No No
Factory Yes Yes No
Decorator Yes No? No
Provider Yes Yes Yes

Constant

name := """pavilion-play-v0.2"""
version := "1.0-SNAPSHOT"
lazy val root = (project in file(".")).enablePlugins(PlayJava)
//Admin panel start
lazy val gulpDirectory = baseDirectory{ _ / "pavilion-panel"}
includeFilter in (Assets, unmanagedResources) := "dist"
lazy val gulpDirectory = baseDirectory { _ / "admin-panel" }
unmanagedResourceDirectories in Assets <+= gulpDirectory
includeFilter in Assets in unmanagedResourceDirectories := "bower_components" || "dist" || "tmp"
excludeFilter in Assets in unmanagedResourceDirectories := new SimpleFileFilter(_.getParent == "node_modules")
@sasajib
sasajib / app.js
Last active August 29, 2015 14:24 — forked from dbainbridge/app.js
Express and socket io connection
/**
* Module dependencies.
*/
var express = require('express')
, routes = require('./routes')
, http = require('http');
var app = express();
var server = app.listen(3000);
{
"data": [
{
"like_count": 105,
"total_count": 111,
"share_count": 5,
"click_count": 0,
"comment_count": 1
}
]

Share Counts

I have always struggled with getting all the various share buttons from Facebook, Twitter, Google Plus, Pinterest, etc to align correctly and to not look like a tacky explosion of buttons. Seeing a number of sites rolling their own share buttons with counts, for example The Next Web I decided to look into the various APIs on how to simply return the share count.

If you want to roll up all of these into a single jQuery plugin check out Sharrre

Many of these API calls and methods are undocumented, so anticipate that they will change in the future. Also, if you are planning on rolling these out across a site I would recommend creating a simple endpoint that periodically caches results from all of the APIs so that you are not overloading the services will requests.

Twitter