Skip to content

Semester rebase #525

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 16 commits into from
Closed

Semester rebase #525

wants to merge 16 commits into from

Conversation

kdmnk
Copy link
Contributor

@kdmnk kdmnk commented May 7, 2024

IN PROGRESS, TESTING CODE RABBIT

Summary by CodeRabbit

  • New Features

    • Introduced new functionalities for handling periodic events across various application modules.
    • Added form adjustments and conditional rendering based on user permissions and event statuses in the application interface.
    • Implemented new routes for managing periodic events.
  • Bug Fixes

    • Updated evaluation availability checks and deadline computations to enhance accuracy and reliability.
  • Refactor

    • Streamlined authorization checks and adjusted related methods across controllers and policies to improve security and maintainability.
  • Documentation

    • Updated language resource files to include new validation rules.
  • Chores

    • Modified database seeders to temporarily adjust mail driver settings during seeding operations.
  • Style

    • Refined HTML structure and styling in various view templates to improve user interface consistency and usability.

@kdmnk kdmnk requested a review from a team as a code owner May 7, 2024 06:35
Copy link
Contributor

coderabbitai bot commented May 7, 2024

Important

Auto Review Skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

The changes encompass the introduction and implementation of a new PeriodicEvents model, enhancing time-sensitive event management in the application. This update streamlines processes like application deadlines and semester evaluations, improving overall functionality and flexibility.

Changes

File Path Change Summary
.env.example, app/Http/Controllers/Auth/ApplicationController.php, app/Http/Controllers/Secretariat/SemesterEvaluationController.php, app/Http/Middleware/NotifyAboutEvaluation.php, app/Mail/..., app/Models/PeriodicEvents/..., app/Policies/..., bootstrap/app.php, database/migrations/..., database/seeders/DatabaseSeeder.php, resources/lang/..., resources/views/auth/application/..., resources/views/layouts/navbar.blade.php, routes/web.php, tests/Feature/... Introduction and integration of PeriodicEvents. Removal of EventTrigger. Updates in middleware, mail classes, and views to accommodate new event handling. Adjustments in policies and routes to align with the new model.

🐰✨

Changes here, changes there,
Code hops around with flair!
New events come to play,
Making our app better every day!
Let's celebrate, hip, hip, hooray! 🎉
🐰💻


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

deepsource-autofix bot added a commit that referenced this pull request May 7, 2024
This commit fixes the style issues introduced in 6d4fcca according to the output
from PHP CS Fixer.

Details: #525
@kdmnk kdmnk marked this pull request as draft May 7, 2024 06:36
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 9

Out of diff range and nitpick comments (5)
tests/Feature/EvaluationFormTest.php (2)

42-42: Consider using language keys for session messages to support internationalization.


57-57: Consider renaming the function to assertFormIsNotAvailable to correct the grammatical error.

app/Models/PeriodicEvents/PeriodicEvent.php (1)

63-67: Ensure that Carbon::parse is necessary here. If start_date and end_date are already cast to Carbon instances in the model, this parsing might be redundant.

app/Http/Controllers/Secretariat/SemesterEvaluationController.php (2)

Line range hint 47-60: Ensure proper localization and time zone handling for the deadline formatting.

- 'deadline' => self::getDeadline()?->format('Y-m-d'),
+ 'deadline' => self::getDeadline()?->timezone('Europe/Budapest')->format('Y-m-d H:i'),

Line range hint 66-110: Consider adding exception handling for potential mail sending failures.

+ try {
      Mail::to(User::president())
          ->queue(new \App\Mail\AnonymousFeedback(User::president()->name, $request->feedback));
      Mail::to(User::studentCouncilSecretary())
          ->queue(new \App\Mail\AnonymousFeedback(User::studentCouncilSecretary()->name, $request->feedback));
+ } catch (\Exception $e) {
+     Log::error('Failed to send anonymous feedback: ' . $e->getMessage());
+     return back()->with('error', 'Failed to send feedback.');
+ }
Review Details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits Files that changed from the base of the PR and between 3b26eb1 and 6d4fcca.
Files selected for processing (26)
  • .env.example (1 hunks)
  • app/Http/Controllers/Auth/ApplicationController.php (11 hunks)
  • app/Http/Controllers/Secretariat/SemesterEvaluationController.php (7 hunks)
  • app/Http/Middleware/NotifyAboutEvaluation.php (1 hunks)
  • app/Mail/EvaluationFormAvailable.php (1 hunks)
  • app/Mail/EvaluationFormAvailableDetails.php (1 hunks)
  • app/Mail/EvaluationFormReminder.php (1 hunks)
  • app/Models/PeriodicEvents/HasPeriodicEvent.php (1 hunks)
  • app/Models/PeriodicEvents/PeriodicEvent.php (1 hunks)
  • app/Policies/ApplicationFormPolicy.php (1 hunks)
  • app/Policies/UserPolicy.php (2 hunks)
  • bootstrap/app.php (2 hunks)
  • database/migrations/2020_06_09_104537_create_event_triggers_table.php (2 hunks)
  • database/migrations/2023_05_29_174603_modfiy_event_triggers.php (2 hunks)
  • database/migrations/2024_04_06_222031_create_periodic_events.php (1 hunks)
  • database/seeders/DatabaseSeeder.php (1 hunks)
  • resources/lang/en/validation.php (1 hunks)
  • resources/lang/hu/validation.php (1 hunks)
  • resources/views/auth/application/app.blade.php (1 hunks)
  • resources/views/auth/application/applications.blade.php (2 hunks)
  • resources/views/auth/application/status.blade.php (1 hunks)
  • resources/views/layouts/navbar.blade.php (1 hunks)
  • resources/views/user/profile.blade.php (2 hunks)
  • routes/web.php (1 hunks)
  • tests/Feature/EvaluationFormTest.php (5 hunks)
  • tests/Feature/PeriodicEventTest.php (1 hunks)
Files skipped from review due to trivial changes (6)
  • .env.example
  • app/Policies/UserPolicy.php
  • database/migrations/2020_06_09_104537_create_event_triggers_table.php
  • database/migrations/2023_05_29_174603_modfiy_event_triggers.php
  • resources/lang/hu/validation.php
  • resources/views/user/profile.blade.php
Additional comments not posted (27)
database/seeders/DatabaseSeeder.php (1)

16-25: Temporary change to mail driver configuration during seeding.

Verification successful

The verification process aimed to confirm that the temporary change to the mail driver configuration during the seeding process in DatabaseSeeder.php does not affect other parts of the application. The executed script searched for occurrences of config(['mail.driver' within PHP files in the codebase.

Results from the Script Execution:

The script found only two occurrences of the mail driver configuration change, and both are located within the DatabaseSeeder.php file:

  1. config(['mail.driver' => 'log']); - This line sets the mail driver to 'log'.
  2. config(['mail.driver' => env('MAIL_DRIVER')]); - This line resets the mail driver to its original configuration based on the environment variable.

Conclusion:

Since the changes to the mail driver configuration are confined to the DatabaseSeeder.php file and there are no other occurrences in the codebase, it can be concluded that this configuration change is scoped only to the seeding process. This ensures that it does not unintentionally affect other environments or parts of the application.

Scripts Executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify that the mail driver configuration change is scoped only to the seeding process and does not affect other environments.

# Test: Search for other occurrences of mail driver configuration changes. Expect: No other occurrences outside of seeding.
rg --type php $'config\(\[\'mail.driver\''

Length of output: 216

app/Mail/EvaluationFormAvailable.php (1)

24-24: Constructor updated to use getDeadline() method.

app/Mail/EvaluationFormReminder.php (1)

26-26: Constructor updated to use getDeadline() method.

app/Mail/EvaluationFormAvailableDetails.php (1)

25-25: Constructor updated to use getDeadline() method.

resources/views/auth/application/status.blade.php (1)

2-20: Updated status display logic in Blade template.

Verification successful

The verification process has confirmed that the status handling logic in the Blade template is consistent across the application, as no other templates were found to handle statuses differently. The occurrences in resources/views/auth/application/status.blade.php are the only ones, ensuring uniformity in status display.

  • File: resources/views/auth/application/status.blade.php - Contains all status handling logic.
Scripts Executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify that all possible statuses are handled correctly in the Blade template.

# Test: Search for other occurrences of status handling in Blade templates. Expect: Consistent handling across all templates.
rg --type blade $'@switch\(\$status\)'

Length of output: 69



Script:

#!/bin/bash
# Description: Verify that all possible statuses are handled correctly in the Blade template.

# Test: Search for other occurrences of status handling in Blade templates. Expect: Consistent handling across all templates.
rg '@switch\(\$status\)' --glob '*.blade.php'

Length of output: 189

app/Http/Middleware/NotifyAboutEvaluation.php (1)

29-29: Added isActive() check in middleware.

database/migrations/2024_04_06_222031_create_periodic_events.php (1)

14-27: Introduced new periodic_events table and removed event_triggers table.

Verification successful

The shell script was executed to verify the presence and usage of the periodic_events table in the codebase. The script specifically searched for occurrences of Schema::create('periodic_events' within PHP files. According to the output, the periodic_events table is created only in the file database/migrations/2024_04_06_222031_create_periodic_events.php. This indicates that there are no other migrations or schema definitions for this table elsewhere in the codebase.

Given this information, it appears that the migration process and the schema of the new periodic_events table are confined to the specified migration file. There are no conflicting or duplicate schema creations for this table, which is a positive sign for the integrity of the database schema changes.

Since the script output aligns with the expected outcome of having a single, consistent definition for the periodic_events table, we can conclude that the migration has been implemented correctly in this aspect.


Introduced new periodic_events table and removed event_triggers table.

  • The migration process and the schema of the new periodic_events table are verified to be correctly implemented in the specified migration file without conflicts or duplications in the codebase.
Scripts Executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the migration process and the schema of the new `periodic_events` table.

# Test: Search for other occurrences of the `periodic_events` table in the codebase. Expect: Consistent usage and correct schema definition.
rg --type php $'Schema::create\(\'periodic_events\''

Length of output: 194

bootstrap/app.php (1)

Line range hint 7-45: Added new middleware and scheduled task for PeriodicEvent.

Verification successful

The review of the integration and configuration of the PeriodicEvent class in the codebase indicates that it is consistently used and properly integrated across various components of the application. The class is not only part of the model layer but is also actively used in routes and controllers, and it is well-covered by tests. The scheduled task in bootstrap/app.php that invokes PeriodicEvent::listen() aligns with its usage patterns elsewhere in the application.

  • Tests: The class is extensively tested in tests/Feature/PeriodicEventTest.php.
  • Routes: It is integrated into the routing in routes/web.php for handling specific application-related events.
  • Models and Controllers: The class is used in app/Models/PeriodicEvents/PeriodicEvent.php and related controllers, ensuring its functionality is central to the application's operations.
Scripts Executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the configuration and integration of the new middleware and scheduled task for `PeriodicEvent`.

# Test: Search for other occurrences of the `PeriodicEvent` class and its usage in the codebase. Expect: Consistent configuration and correct integration.
rg --type php $'PeriodicEvent'

Length of output: 4805

app/Policies/ApplicationFormPolicy.php (1)

26-41: This method correctly implements the logic to determine if a user can view a specific application form.

app/Models/PeriodicEvents/HasPeriodicEvent.php (1)

61-64: This method correctly implements the logic to check if the associated periodic event is currently active.

tests/Feature/PeriodicEventTest.php (6)

19-36: This test case correctly implements the logic to test getting a periodic event that is currently active.


41-52: This test case correctly implements the logic to test getting a periodic event that has already passed.


57-73: This test case correctly implements the logic to test getting a periodic event that has passed but is still shown due to the show_until date.


78-93: This test case correctly implements the logic to test getting a periodic event that has passed but has an extended end date.


98-108: This test case correctly implements the logic to test getting a periodic event that has passed, including the extended end date.


134-146: This test case correctly implements the logic to test getting a periodic event that is set in the future.

resources/lang/en/validation.php (1)

52-54: The addition of validation rules for now, end_date, and extended_end_date correctly aligns with the application's changes related to handling periodic events and their deadlines.

app/Http/Controllers/Secretariat/SemesterEvaluationController.php (3)

35-37: Method correctly triggers email sending when a periodic event starts.


172-172: Method correctly handles sending evaluation available notifications.


Line range hint 199-199: Method correctly handles the finalization of statements and user deactivation.

resources/views/layouts/navbar.blade.php (1)

67-67: New menu item for application forms added correctly.

app/Http/Controllers/Auth/ApplicationController.php (5)

45-48: Method correctly implements authorization logic for changing periodic events.


94-94: Method correctly handles storing application form data based on the request's page parameter.


184-184: Method correctly handles editing application notes and status.


319-319: Method correctly handles the submission of applications after checking for missing data.


331-331: Method correctly exports applications to an Excel file.

routes/web.php (1)

175-175: New route for handling storage or update of periodic events added correctly.

$event->start_handled = now();
$event->save(['timestamps' => false]);
}
//TODO reminders
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Complete the implementation of reminders as indicated by the TODO comment.

Would you like me to help implement the reminder functionality or should I open a GitHub issue to track this task?

@if ($deadline_extended)
<small class="coli-text text-orange">(Meghosszabbítva)</small>
@endif
</h6>
@if($user->application->status == App\Models\ApplicationForm::STATUS_IN_PROGRESS)
Hátra van: <i>{{ \Carbon\Carbon::now()->diffInDays($deadline, false) }}</i> nap.
Hátra van: <i>{{ (int)\Carbon\Carbon::now()->diffInDays($deadline, false) }}</i> nap.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider moving the logic to calculate the remaining days to the controller to keep the view cleaner and more maintainable.

'extended_end_date' => $request->get('extended_end_date') ?? $event->extended_end_date,
'show_until' => $request->get('show_until') ?? $event->show_until,
]);
//TODO reset _handled fields
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Complete the implementation of resetting handled fields as indicated by the TODO comment.

Would you like me to help implement this functionality or should I open a GitHub issue to track this task?

Comment on lines 8 to 36
@can('finalize', \App\Models\ApplicationForm::class)
<div class="card">
<div class="card-content">
<div class="row center" style="margin-bottom: 0">
<form id="workshop-filter" method="GET" route="{{route('applications')}}">
<x-input.select id="workshop" :elements="$workshops" allow-empty :default="$workshop"
text="Műhely"/>
@can('viewUnfinishedApplications', \App\models\User::class)
@foreach (\App\Models\ApplicationForm::STATUSES as $st)
<label>
<input type="radio" name="status" value="{{$st}}" @if($status == $st) checked @endif>
<span style="padding-left: 25px; margin: 5px">@include('auth.application.status', ['status' => $st])</span>
</label>
@endforeach
@endif
<x-input.button type="submit" text="Szűrés"/>
</form>
<form id="empty-filter" method="GET" route="{{route('application')}}" style="{{($status=='' && $workshop=='')?'display: none':''}}">
<x-input.button id="delete-filter" text="Szűrő törlése"/>
</form>
<form action="{{route('applications.event')}}" method="POST">
@csrf
<div class="card-content">
<div class="card-title">
Felvételi időszak
</div>
<div class="row">
<!-- These are using html datetime-local attribute because we don't have datetime picker. The labels are not compatible with our components. -->
<x-input.select m="3" id="semester_id" :elements="\App\Models\Semester::all()" :value="$periodicEvent?->semester_id" :default="\App\Models\Semester::current()->succ()->id" helper="Felvétel szemesztere"/>
<x-input.text m="3" id="end_date" type="datetime-local" without-label helper="Határidő" :value="$periodicEvent?->end_date"/>
<x-input.text m="3" id="extended_end_date" type="datetime-local" helper="Meghosszabbított határidő (üres, ha nincs meghosszabítva)" without-label
:value="$periodicEvent?->extended_end_date"/>
<x-input.text m="3" id="show_until" type="date" helper="Az adatok elérhetőek eddig" :value="$periodicEvent?->show_until" />

</div>
@if($periodicEvent)
<blockquote>@if($periodicEvent->isActive)TODO @endif</blockquote>
@endif
@if(!$periodicEvent)
<blockquote>A felvételi megnyílik, amint az adatok kitöltésre kerülnek.</blockquote>
@endif

<x-input.button floating class="right" icon="save"/>
</div>
<blockquote>
@can('editApplicationStatus', \App\Models\User::class)
<p>A jelentkezők aktuális státusza a jelentkezők számára nem nyilvános.</p>
@endcan
@can('finalizeApplicationProcess', \App\Models\User::class)
<p>{{$applicationDeadline->addWeeks(1)->format('Y. m. d.')}} után lehet a lap alján felvenni a kiválasztott jelentkezőket, ezzel véglegesíteni a felvételit.</p>
@endcan
</blockquote>
</form>
</div>
@endcan
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider refactoring to move permission checks to the controller to decide which parts of the form to display, simplifying the template.

return now() <= $deadline && $available >= Semester::next()->getStartDate();
public function authorizeChangePeriodicEvent(): void
{
// TODO
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: Implement the authorization logic.

Would you like me to help implement this method or should I open a GitHub issue to track this task?

{
//TODO
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: Implement the reminder sending logic.

Would you like me to help implement this method or should I open a GitHub issue to track this task?

Comment on lines 68 to 69
'deadline' => self::getDeadline(),
'deadline_extended' => self::isExtended(),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding exception handling for potential issues during deadline checks.

+ try {
      'deadline' => self::getDeadline(),
      'deadline_extended' => self::isExtended(),
+ } catch (\Exception $e) {
+     Log::error('Failed to retrieve deadlines: ' . $e->getMessage());
+     return back()->with('error', 'Failed to retrieve deadlines.');
+ }

Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
'deadline' => self::getDeadline(),
'deadline_extended' => self::isExtended(),
try {
'deadline' => self::getDeadline(),
'deadline_extended' => self::isExtended(),
} catch (\Exception $e) {
Log::error('Failed to retrieve deadlines: ' . $e->getMessage());
return back()->with('error', 'Failed to retrieve deadlines.');
}

Comment on lines 170 to 171
'applicationDeadline' => self::getDeadline(),
'periodicEvent' => self::periodicEvent()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding exception handling for potential issues during application retrieval.

+ try {
      'applicationDeadline' => self::getDeadline(),
      'periodicEvent' => self::periodicEvent()
+ } catch (\Exception $e) {
+     Log::error('Failed to retrieve application data: ' . $e->getMessage());
+     return back()->with('error', 'Failed to retrieve application data.');
+ }

Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
'applicationDeadline' => self::getDeadline(),
'periodicEvent' => self::periodicEvent()
try {
'applicationDeadline' => self::getDeadline(),
'periodicEvent' => self::periodicEvent()
} catch (\Exception $e) {
Log::error('Failed to retrieve application data: ' . $e->getMessage());
return back()->with('error', 'Failed to retrieve application data.');
}

@@ -181,7 +199,7 @@
*/
public function finalizeApplicationProcess()
{
$this->authorize('finalizeApplicationProcess', User::class);
$this->authorize('finalize', ApplicationForm::class);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding transaction rollback in case of failures during the finalization process.

+ try {
      DB::transaction(function () {
          // existing code
      });
+ } catch (\Exception $e) {
+     DB::rollback();
+     Log::error('Failed to finalize application process: ' . $e->getMessage());
+     return back()->with('error', 'Failed to finalize application process.');
+ }

Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
$this->authorize('finalize', ApplicationForm::class);
try {
DB::transaction(function () {
$this->authorize('finalize', ApplicationForm::class);
});
} catch (\Exception $e) {
DB::rollback();
Log::error('Failed to finalize application process: ' . $e->getMessage());
return back()->with('error', 'Failed to finalize application process.');
}

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Review Details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits Files that changed from the base of the PR and between 6d4fcca and 32c649d.
Files selected for processing (5)
  • app/Http/Controllers/Auth/ApplicationController.php (11 hunks)
  • app/Models/PeriodicEvents/HasPeriodicEvent.php (1 hunks)
  • app/Models/PeriodicEvents/PeriodicEvent.php (1 hunks)
  • database/migrations/2020_06_09_104537_create_event_triggers_table.php (2 hunks)
  • database/migrations/2024_04_06_222031_create_periodic_events.php (1 hunks)
Files skipped from review as they are similar to previous changes (5)
  • app/Http/Controllers/Auth/ApplicationController.php
  • app/Models/PeriodicEvents/HasPeriodicEvent.php
  • app/Models/PeriodicEvents/PeriodicEvent.php
  • database/migrations/2020_06_09_104537_create_event_triggers_table.php
  • database/migrations/2024_04_06_222031_create_periodic_events.php

@kdmnk kdmnk force-pushed the semester-rebase branch from 32c649d to ece6f87 Compare May 11, 2024 10:20
deepsource-autofix bot and others added 9 commits May 11, 2024 10:20
This commit fixes the style issues introduced in ece6f87 according to the output
from PHP CS Fixer.

Details: #525
This commit fixes the style issues introduced in f73cf01 according to the output
from PHP CS Fixer.

Details: #525
kdmnk added a commit that referenced this pull request Jun 6, 2024
* Periodic Events base

* PeriodicEventController instead of abstract model. UI for application.

* Split policies to new applicationformpolicy

* PeriodicEventTest.php

* make it a trait

* cleanup and further refactoring

* style: format code with PHP CS Fixer

This commit fixes the style issues introduced in ece6f87 according to the output
from PHP CS Fixer.

Details: #525

* fix ui bugs

* semester evaluation

* mr and miss votes

* fix static calls

* send reminders

* update gitignore

* remove debug statements

* remove unwanted changes

* style: format code with PHP CS Fixer

This commit fixes the style issues introduced in d3c1f1e according to the output
from PHP CS Fixer.

Details: #532

* clean up tests temporarily

* add missing comment

* style: format code with PHP CS Fixer

This commit fixes the style issues introduced in 2da5b89 according to the output
from PHP CS Fixer.

Details: #532

* simplifications and more comments

* error handling

* style: format code with PHP CS Fixer

This commit fixes the style issues introduced in f8cfbc2 according to the output
from PHP CS Fixer.

Details: #532

* Update app/Models/PeriodicEvent.php

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "remove unwanted changes"

This reverts commit d3c1f1e.

* fix static calls

* remove show until from mr and miss

* fixes and more description

* fix status test

* add missing docs

* delete unnecessary EvaluationFormTest.php

* missing comments

---------

Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@kdmnk kdmnk closed this Jun 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant