With the popularity of location-based social networks, personalized points-of-interest (POIs) recommendation has become an essential online service, providing a wide variety of user preferred check-in locations, namely POIs. However, the sparsity of user-POI matrix makes it difficult to recommend unvisited POIs to users. The availability of the user, social and geographical information offers an unprecedented opportunity to address this problem. In this paper, our goal is to accurately recommend POIs to users with the proper order. To handle this, we propose a practical POI recommendation framework UFC by incorporating User preference, Friend importance and Check-in correlation. UFC combines three fundamental factors and derives an overall prediction score of each user for any POIs. User preference is personalized based on collaboration filtering. As for the friend importance, we argue that intimate friends and distant friends share common influence and thus merge these two different factors to model friend importance. We study the geographical correlation of user check-in behavior in depth and employ a probabilistic model to characterize check-in correlation. Extensive experimental results exhibit a significant improvement in our proposed method compared to other state-of-art POI recommendation algorithms.