summary refs log tree commit diff
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2010-02-15 13:13:46 +0100
committerfranck cuny <franck@lumberjaph.net>2010-02-15 13:13:46 +0100
commite321b6d19f3eb1b1be1328f3ed0fef82acb85289 (patch)
tree78a154b697d475371677ac8fc14450a48bb29552
parentlayout (diff)
downloadgithub-explorer-e321b6d19f3eb1b1be1328f3ed0fef82acb85289.tar.gz
get_average
-rw-r--r--lib/githubexplorer/Gexf.pm36
1 files changed, 27 insertions, 9 deletions
diff --git a/lib/githubexplorer/Gexf.pm b/lib/githubexplorer/Gexf.pm
index de0da49..304b57c 100644
--- a/lib/githubexplorer/Gexf.pm
+++ b/lib/githubexplorer/Gexf.pm
@@ -93,17 +93,18 @@ has graph => (
 sub gen_gexf {
     my $self = shift;
 
-    $self->basic_profiles;
-    my $basic_profiles = $self->dump_gexf;
-    $basic_profiles > io('basic_profiles.gexf');
+    $self->_average_by_langage();
+    # $self->basic_profiles;
+    # my $basic_profiles = $self->dump_gexf;
+    # $basic_profiles > io('basic_profiles.gexf');
 
-    $self->profiles_from_repositories;
-    my $profiles_from_repositories = $self->dump_gexf;
-    $profiles_from_repositories > io('profiles_from_repositories.gexf');
+    # $self->profiles_from_repositories;
+    # my $profiles_from_repositories = $self->dump_gexf;
+    # $profiles_from_repositories > io('profiles_from_repositories.gexf');
 
-    $self->repositories_from_profiles;
-    my $repositories_from_profiles = $self->dump_gexf;
-    $profiles_from_repositories > io('repositories_from_profiles.gexf');
+    # $self->repositories_from_profiles;
+    # my $repositories_from_profiles = $self->dump_gexf;
+    # $profiles_from_repositories > io('repositories_from_profiles.gexf');
 }
 
 sub dump_gefx {
@@ -268,6 +269,23 @@ sub _get_languages_for_profile {
     return ( \%languages, \@sorted_lang );
 }
 
+sub _average_by_langage {
+    my $self = shift;
+    my $hash_lang;
+    my $repositories = $self->schema->resultset('Repositories')->search();
+    while my ( $repos = $repositories->next ) {
+        my $lang = $self->schema->resultset('RepoLang')->search(
+            { repositories => $repos->id }, { order_by => 'size' }
+        )->first;
+            $hash_lang->{ $lang->name }->{repositories}++;
+            my $forks = $self->schema->resultset('Fork')
+            ->search( { repos => $repos->id } )->count;
+            $hash_lang->{ $lang->name }->{contributors} += $forks;
+    };
+    use YAML::Syck;
+    warn Dump $hash_lang;
+}
+
 #sub repositories {
 #    my $self = shift;
 #