<commit_before>'use strict';
/**
 * امکانات اولیه برای مکان‌یابی را در اختیار کاربران قرار می‌دهد.
 */
angular.module('pluf.news', ['pluf'])
/**
 * ابزارهای مورد نیاز برای یک برچسب را ایجاد می‌کند.
 */
.factory('PFollower', function(PObject, PException) {
  var pFollower = function() {
    PObject.apply(this, arguments);
  };
  pFollower.prototype = new PObject();
  return pFollower;
})

.service('$news', function($httpParamSerializerJQLike, $http, $q, PException, PFollower){

    this._df = [];
    this._getf = function(i){
      return this._df[i];
    }
    this._retf= function(id, d){
      var i = this._getf(id);
      if (i) {
        i.setData(d);
        return i;
      }
      this._df[id] = new PFollower(d);
      return this._df[id];
    }


  this.validateFollower = function(f) {
    var def = $q.defer();
    var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    if(re.test(f)){
      def.resolve({
        type: 'email',
        address: f
      });
      return def.promise;
    }
    var mob = /^\+?\d{10,14}$/;
    if(mob.test(f)){
      def.resolve({
        type: 'mobile',
        address: f
      })
      return def.promise;
    }
    def.resolve({
      type: 'other',
      address: f
    })
    return def.promise;
  }

  // دنبالگرها
  this.newFollower = function(f){
    var scope = this;
    return $http({
      method: 'POST',
      url: '/api/newspaper/follower/new',
      data: $httpParamSerializerJQLike(f),
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
    }).then(function(res){
      return scope._retf(res.data.id, res.data);
    });
  }
  this.followers = function(p){}
  this.follower = function(i){}

})<commit_msg>فهرست ایمل‌ها در مدل روزنامه اضافه شده است.<commit_after>'use strict';
/**
 * امکانات اولیه برای مکان‌یابی را در اختیار کاربران قرار می‌دهد.
 */
angular.module('pluf.news', ['pluf'])
/**
 * ابزارهای مورد نیاز برای یک برچسب را ایجاد می‌کند.
 */
.factory('PFollower', function(PObject, PException) {
  var pFollower = function() {
    PObject.apply(this, arguments);
  };
  pFollower.prototype = new PObject();
  return pFollower;
})

.service('$news', function($httpParamSerializerJQLike, $http, $q, PException, PFollower,PaginatorPage){

  this._df = [];
  this._getf = function(i){
    return this._df[i];
  }
  this._retf= function(id, d){
    var i = this._getf(id);
    if (i) {
      i.setData(d);
      return i;
    }
    this._df[id] = new PFollower(d);
    return this._df[id];
  }


  this.validateFollower = function(f) {
    var def = $q.defer();
    var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    if(re.test(f)){
      def.resolve({
        type: 'email',
        address: f
      });
      return def.promise;
    }
    var mob = /^\+?\d{10,14}$/;
    if(mob.test(f)){
      def.resolve({
        type: 'mobile',
        address: f
      })
      return def.promise;
    }
    def.resolve({
      type: 'other',
      address: f
    })
    return def.promise;
  }

  // دنبالگرها
  this.newFollower = function(f){
    var scope = this;
    return $http({
      method: 'POST',
      url: '/api/newspaper/follower/new',
      data: $httpParamSerializerJQLike(f),
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
    }).then(function(res){
      return scope._retf(res.data.id, res.data);
    });
  }
  this.followers = function(p){
    var scope = this;
    return $http({
      method: 'GET',
      url: '/api/newspaper/follower/find',
			params : p.getParameter()
    }).then(function(res){
      var page = new PaginatorPage(res.data);
			page.items = [];
			for (var i = 0; i < res.data.counts; i++) {
				page.items.push(scope._retf(res.data.items[i].id, res.data.items[i]));
			}
			return page;
    })
  }
  this.follower = function(i){}

})
{'fraction_non_alphanumeric': 0.21704658077304262, 'fraction_numerical': 0.011645193260654113, 'mean_word_length': 2.4299065420560746, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7010899', 'n_tokens_mistral': 1789, 'n_tokens_neox': 1660, 'n_words': 279}