コード例 #1
0
 public function newversion($prop_id)
 {
     // $obj=DB::transaction(function($connection) {
     $var = INPUT::all();
     $user = Auth::user()->user();
     /*$mod=new Proposal;
                    
                    	$mod=$mod::find($prop_id);
                    					$mod->field=$var['fieldName'];
                                       $mod->title>$var['title_g'];
                                       $mod->team_members=$var['teamMembers'];
                                       $mod->research_place=$var['researchPlace'];
                                       $mod->end_date_of_proposal=$var['duration'];
                                       
                                       $mod->proposed_amount=$var['grantNeeded'];
                                       $mod->description=$var['propDescription'];
                                       $mod->userid=$user['id'];
     
                                       $mod->save();*/
     $ver = \App\proposal_version::where('proposal_id', '=', $prop_id)->first();
     $ver_num = $ver->version_number;
     $ver_num += 1;
     $a = \App\Proposal::find($prop_id);
     $filename = $user['id'] . '_' . $a->title . '_' . $ver_num . '.';
     $filename .= $var['grantProposal']->getClientOriginalExtension();
     $var['grantProposal']->move(storage_path('uploads/grant_proposals'), $filename);
     $obj = new \App\proposal_version();
     $obj::create(['version_number' => $ver_num, 'version_path' => $filename, 'proposal_id' => $prop_id]);
     $ver->destroy($ver->id);
     //	 });
     return $this->allgrants();
 }
コード例 #2
0
ファイル: StatusComposer.php プロジェクト: alerj/edemocracia
 public function compose($view)
 {
     $proposals = Proposal::all();
     $proposals_count = $proposals->count();
     $approvals_count = Approval::all()->count();
     $users_count = User::all()->count();
     $not_responded_count = round($proposals->where('approved_by', null)->where('disapproved_by', null)->where('response', null)->count() / $proposals->count() * 100, 2);
     $view->with(compact('proposals_count'))->with(compact('approvals_count'))->with(compact('users_count'))->with(compact('not_responded_count'));
 }
コード例 #3
0
ファイル: ProposalsTest.php プロジェクト: alerj/edemocracia
 public function testClickProposal()
 {
     $proposal = Proposal::paginate(20)->shuffle()->first();
     $url_proposal = '/proposals/' . $proposal->id;
     //dd($proposal->id, $url_proposal);
     $this->visit('/proposals')->click($proposal->name);
     //            ->see($proposal->name)
     //            ->see($proposal->central_idea)
     //            ->see($proposal->problem);
     //            ->seePageIs($url_proposal);
 }
コード例 #4
0
ファイル: LikesController.php プロジェクト: alerj/edemocracia
 /**
  * Update the specified resource in storage.
  *
  * @param int $id
  *
  * @return Response
  */
 public function update_proposal_like($id, LikeFormRequest $formRequest)
 {
     $proposal = Proposal::findOrFail($id);
     $input = $formRequest->except('_token');
     $input['user_id'] = Auth::user()->id;
     $input['open'] = true;
     $input['pub_date'] = Carbon::now();
     $input['limit_date'] = Carbon::now();
     // update Proposal
     $proposal->fill($input)->save();
     return Redirect::route('proposals')->with('proposal_crud_msg', 'Like Registrado com Sucesso');
 }
コード例 #5
0
 public function makechanges($id)
 {
     $var = INPUT::all();
     $obj = new \App\proposal_comment();
     $obj1 = new \App\proposal_version();
     $mod = \App\Proposal::join('proposal_versions', 'proposals.id', '=', 'proposal_versions.proposal_id')->where('proposals.id', '=', $id)->orderby('proposal_versions.id', 'DESC')->select('proposal_versions.id')->first();
     $obj->comments = $var['comments'];
     $obj->type = 1;
     $obj->proposal_version_id = $mod->id;
     $obj->save();
     $obj1 = $obj1::find($mod->id);
     $obj1->research_status = $var['status'];
     $obj1->save();
     /*return $mod->id;
       if($var['status'])
       {
           if($var['status']==0)
            { 
              $obj1->research_status=0;
               //$obj1->save();
           }
           if($var['status']==1)
            { 
              $obj1->research_status=1;
              // $obj1->save();
           }
         /*  if($var['status']==2)
            { 
              $obj1->research_status=2;
               $obj1->save();
           }*/
     /*if($var['status']==3)
        { 
          $obj1->research_status=3;
           $obj1->save();
       }*/
     //  $obj1->save();
     return $this->allgrants();
     //return $var['status'];
 }
コード例 #6
0
ファイル: ProposalsTest.php プロジェクト: alerj/edemocracia
 public function testProposalPaginates()
 {
     factory(App\Proposal::class, 50)->create();
     $proposals = App\Proposal::paginate(20);
     $this->assertEquals(20, $proposals->count());
 }
 /**
  * Reverse the migrations.
  *
  * @return void
  */
 public function down()
 {
     Proposal::where('in_committee', false)->update(['in_committee' => null]);
 }
コード例 #8
0
 /**
  * Remove the specified resource from storage.
  *
  * @param Project $project
  * @param Module $module
  * @param Page $page
  * @param Image $image
  * @param Proposal $proposal
  * @return \Illuminate\Http\Response
  * @throws \Exception
  */
 public function destroy(Project $project, Module $module, Page $page, Image $image, Proposal $proposal)
 {
     $proposal->delete();
     return redirect()->back();
 }
コード例 #9
0
ファイル: AdminController.php プロジェクト: alerj/edemocracia
 /**
  * Store the specified proposal in storage.
  *
  * @param int $id
  *
  * @return Response
  */
 public function storeProposal(ProposalFormRequest $formRequest)
 {
     $input = $formRequest->except('_token');
     $input['user_id'] = Auth::user()->id;
     $input['open'] = true;
     $input['pub_date'] = Carbon::now();
     $input['limit_date'] = Carbon::now();
     //dd($input);
     $proposal = Proposal::create($input);
     //event(new ProposalWasCreated($proposal));
     //Event::fire(new ProposalWasCreated($proposal));
     return redirect()->route('admin.proposal.show', ['proposal' => $proposal])->with('admin_proposal_crud_msg', 'Ideia Legislativa Incluída com Sucesso');
 }
コード例 #10
0
ファイル: User.php プロジェクト: alerj/edemocracia
 public function getProposalsRespondedCountAttribute()
 {
     return Proposal::where('responder_id', $this->id)->count();
 }
コード例 #11
0
ファイル: ProposalRepository.php プロジェクト: hktang/apnis
 /**
  * Get proposal by ID.
  *
  * @param int $proposalId
  *
  * @return Collection
  */
 public function byId($proposalId)
 {
     return Proposal::find($proposalId);
 }
コード例 #12
0
 /**
  * @return mixed
  */
 public function filterProposals($q, $s)
 {
     if (empty($q)) {
         $q = 'open';
     }
     // Users cannot see what's not approved
     $query = Proposal::whereNotNull('approved_by');
     if ($q == 'open') {
         $query->where(['open' => true, 'in_committee' => false]);
     }
     if ($q == 'committee') {
         $query->where(['open' => true, 'in_committee' => true, 'approved_by_committee' => null, 'disapproved_by_committee' => null]);
     }
     if ($q == 'expired') {
         $query->whereNotNull('time_limit_by')->where(['open' => false, 'time_limit' => true]);
     }
     if ($q == 'disapproved') {
         $query->whereNotNull('disapproved_by_committee')->where('open', false);
     }
     if ($q == 'approved') {
         $query->whereNotNull('approved_by_committee')->where('open', true);
     }
     $this->buildSearch($query, $s);
     $query->orderBy('created_at', 'desc');
     return $query;
 }
コード例 #13
0
ファイル: ModelFactory.php プロジェクト: alerj/edemocracia
| Model Factories
|--------------------------------------------------------------------------
|
| Here you may define all of your model factories. Model factories give
| you a convenient way to create models for testing and seeding your
| database. Just tell the factory how a default model should look.
|
*/
use App\Proposal;
use App\State;
use App\User;
use Illuminate\Support\Facades\Request;
$factory->define(App\User::class, function (Faker\Generator $faker) {
    return ['name' => $faker->name, 'email' => $faker->email, 'password' => Hash::make('123456'), 'remember_token' => str_random(10), 'role_id' => $faker->randomElement([1, 2, 99]), 'uf' => State::all()->shuffle()->first()->uf, 'cpf' => $faker->cpf, 'uuid' => $faker->uuid];
});
$factory->defineAs(App\User::class, 'admin', function (Faker\Generator $faker) use($factory) {
    $user = $factory->raw(App\User::class);
    //Admin 0
    return array_merge($user, ['role_id' => 0]);
});
$factory->define(App\Proposal::class, function (Faker\Generator $faker) {
    $random = $faker->boolean($chanceOfGettingTrue = 20);
    return ['name' => $faker->sentence($nbWords = 6, $variableNbWords = true), 'user_id' => User::all()->shuffle()->first()->id, 'open' => true, 'idea_central' => $faker->text($maxNbChars = 100), 'problem' => $faker->paragraph($nbSentences = 3, $variableNbSentences = true), 'idea_exposition' => $faker->realText($maxNbChars = 200, $indexSize = 2), 'response' => $response = $faker->randomElement($array = [null, $faker->realText($maxNbChars = 100, $indexSize = 2), $faker->text($maxNbChars = 50)]), 'responder_id' => !$response ? null : User::all()->where('role_id', 1)->shuffle()->first()->id, 'disapproved_at' => !$response ? null : \Carbon\Carbon::now(), 'disapproved_by' => !$response ? null : User::all()->where('role_id', 1)->shuffle()->first()->id, 'approved_at' => $response ? null : ($random ? null : \Carbon\Carbon::now()), 'approved_by' => $response ? null : ($random ? null : User::all()->where('role_id', 1)->shuffle()->first()->id), 'created_at' => \Carbon\Carbon::now(), 'updated_at' => \Carbon\Carbon::now(), 'pub_date' => \Carbon\Carbon::now(), 'limit_date' => \Carbon\Carbon::now()->addMonth(config('global.timeLimitMonth'))];
});
$factory->define(App\Like::class, function (Faker\Generator $faker) {
    $user_id = User::all()->shuffle()->first()->id;
    return ['user_id' => $user_id, 'proposal_id' => Proposal::all()->shuffle()->first()->id, 'uuid' => User::where('id', $user_id)->first()->uuid, 'like' => $faker->boolean($chanceOfGettingTrue = 70), 'ip_address' => Request::ip()];
});
$factory->define(App\ProposalFollow::class, function (Faker\Generator $faker) {
    return ['user_id' => User::all()->shuffle()->first()->id, 'proposal_id' => Proposal::all()->shuffle()->first()->id];
});