Skip to content

Commit b70cc2b

Browse files
authored
Merge pull request #3458 from codeeu/dev
Dev
2 parents 6df66ef + 34bc3c9 commit b70cc2b

8 files changed

+353
-35
lines changed

app/Nova/TrainingResource.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,15 @@ public function fields(Request $request): array
7676
->nullable()
7777
->help('Optional YouTube URL. Supports youtu.be, watch, embed, shorts.'),
7878

79+
Text::make('Video script URL', 'video_script_url')
80+
->nullable()
81+
->rules('nullable', 'url')
82+
->help('Optional link shown under the video, e.g. DOCX/PDF script.'),
83+
84+
Text::make('Video script link text', 'video_script_text')
85+
->nullable()
86+
->help('Optional. Defaults to "Download the video script".'),
87+
7988
Text::make('Body image', 'body_image')
8089
->nullable()
8190
->help('Optional image path/URL (supports Amazon S3/CloudFront).'),
@@ -87,6 +96,18 @@ public function fields(Request $request): array
8796
->nullable()
8897
->help('Main training content area'),
8998

99+
Trix::make('PDF links section', 'pdf_links_section')
100+
->nullable()
101+
->help('Optional area for numbered downloadable resources (e.g. 1-6 links).'),
102+
103+
Trix::make('Contacts section', 'contacts_section')
104+
->nullable()
105+
->help('Optional contacts/extra info block.'),
106+
107+
Trix::make('Register box section', 'register_box_section')
108+
->nullable()
109+
->help('Optional text shown in a highlighted callout box (register on map, hashtags, etc).'),
110+
90111
Text::make('Button text', 'button_text')->nullable(),
91112

92113
Text::make('Button URL', 'button_url')

app/TrainingResource.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,14 @@ class TrainingResource extends Model
2020
'intro',
2121
'highlight_box',
2222
'video_url',
23+
'video_script_url',
24+
'video_script_text',
2325
'body_image',
2426
'body_image_alt',
2527
'content',
28+
'pdf_links_section',
29+
'contacts_section',
30+
'register_box_section',
2631
'button_text',
2732
'button_url',
2833
'secondary_button_text',
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
<?php
2+
3+
use Illuminate\Database\Migrations\Migration;
4+
use Illuminate\Database\Schema\Blueprint;
5+
use Illuminate\Support\Facades\Schema;
6+
7+
return new class extends Migration
8+
{
9+
/**
10+
* Run the migrations.
11+
*/
12+
public function up(): void
13+
{
14+
Schema::table('training_resources', function (Blueprint $table) {
15+
$table->longText('pdf_links_section')->nullable()->after('content');
16+
$table->longText('contacts_section')->nullable()->after('pdf_links_section');
17+
$table->longText('register_box_section')->nullable()->after('contacts_section');
18+
});
19+
}
20+
21+
/**
22+
* Reverse the migrations.
23+
*/
24+
public function down(): void
25+
{
26+
Schema::table('training_resources', function (Blueprint $table) {
27+
$table->dropColumn([
28+
'pdf_links_section',
29+
'contacts_section',
30+
'register_box_section',
31+
]);
32+
});
33+
}
34+
};
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?php
2+
3+
use Illuminate\Database\Migrations\Migration;
4+
use Illuminate\Database\Schema\Blueprint;
5+
use Illuminate\Support\Facades\Schema;
6+
7+
return new class extends Migration
8+
{
9+
/**
10+
* Run the migrations.
11+
*/
12+
public function up(): void
13+
{
14+
Schema::table('training_resources', function (Blueprint $table) {
15+
$table->string('video_script_url')->nullable()->after('video_url');
16+
$table->string('video_script_text')->nullable()->after('video_script_url');
17+
});
18+
}
19+
20+
/**
21+
* Reverse the migrations.
22+
*/
23+
public function down(): void
24+
{
25+
Schema::table('training_resources', function (Blueprint $table) {
26+
$table->dropColumn([
27+
'video_script_url',
28+
'video_script_text',
29+
]);
30+
});
31+
}
32+
};
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
<?php
2+
3+
namespace Database\Seeders;
4+
5+
use App\TrainingResource;
6+
use Illuminate\Database\Seeder;
7+
8+
class TrainingResourceVetToolkitSeeder extends Seeder
9+
{
10+
/**
11+
* Seed a ready-to-edit VET Toolkit training resource.
12+
*/
13+
public function run(): void
14+
{
15+
TrainingResource::updateOrCreate(
16+
['slug' => 'eu-code-week-4-vet'],
17+
[
18+
'card_title' => 'EU CODE WEEK 4 VET',
19+
'card_author' => 'Scientific author: Flavio Renga & Marta Risoli',
20+
'card_image' => '/images/vet-toolkit-images.png',
21+
'page_title' => 'EU CODE WEEK 4 VET',
22+
'hero_author' => 'VET TOOLKIT',
23+
'highlight_box' => <<<HTML
24+
<p><strong>Scientific author:</strong> Flavio Renga &amp; Marta Risoli - EdTech researchers at Fondazione LINKS, EU Code Week Italian HUB.</p>
25+
<p><strong>Instructional design, project management, internationalisation:</strong> Veronica Ruberti &amp; Lucia Terrone - Fondazione LINKS, EU Code Week Italian HUB Coordinator</p>
26+
HTML,
27+
'intro' => <<<HTML
28+
<p>In today's rapidly evolving technological landscape, it is crucial to equip Vocational Education and Training (VET) students both with technical competencies-such as coding, 3D modelling, and the Internet of Things (IoT)-and with essential social skills, including collaboration, problem-solving, and creativity. These skills are not just valuable for those pursuing a career in the tech industry but can open doors to a wide range of opportunities across various fields.</p>
29+
<p>To support this vision, the VET Toolkit was created as part of the EU initiative Code Week to support educators to facilitate activities for students between 13 and 18 years of age.</p>
30+
<p>The toolkit is based on the Creative Learning approach and the TinkerCad tool to help students develop digital skills, acquire social and emotional competencies, and stay motivated to pursue careers in the digital field.</p>
31+
<p>The Creative Learning approach is based on the 4 Ps - Projects, Passion, Peers, and Play -, and it offers a flexible framework that shifts the focus from direct instruction to personalized, hands-on exploration. The approach also promotes inclusive learning environments, where teachers act as facilitators and peer students collaborate in flexible spaces that encourage experimentation and reduce the fear of mistakes.</p>
32+
HTML,
33+
'body_image' => '/images/vet-toolkit-images.png',
34+
'body_image_alt' => 'EU Code Week 4 VET learning approach',
35+
'content' => <<<HTML
36+
<h2>Who is the VET Toolkit for?</h2>
37+
<p>The VET toolkit is aimed at VET teachers and educators who wants to:</p>
38+
<ul>
39+
<li>Design and facilitate meaningful project-based learning experiences;</li>
40+
<li>Ensure that all students, including girls and those at risk of being left behind, are included and engaged in the learning process;</li>
41+
<li>Foster essential social skills, including collaboration and problem-solving;</li>
42+
<li>Foster creativity and encourage the use of technology as a "construction material" for creative expression and problem-solving;</li>
43+
<li>Create a growing community of VET Schools and educators actively involved in EU Code Week.</li>
44+
</ul>
45+
<h2>How does the VET toolkit work?</h2>
46+
<p>In this page you will discover the Learning Creative approach through an asynchronous training path in small, sequential, easy-to-follow steps, using accessible language. Every step is a downloadable PDF, easy to print and use in class. It contains theoretical background, lesson outlines, activity descriptions, facilitation prompts, and guidelines for teachers.</p>
47+
<p>The objective is to guide you from learning the Creative Learning approach to applying it in the classroom, supported by lesson plans and scaffolding materials.</p>
48+
<p><strong>Let's start!</strong></p>
49+
HTML,
50+
'pdf_links_section' => <<<HTML
51+
<h2>PDF titles</h2>
52+
<ul>
53+
<li>1 - DISCOVER THE CREATIVE LEARNING APPROACH</li>
54+
<li>2 - CREATE THE LEARNING SPACE</li>
55+
<li>3 - EXPERIMENT WITH THE TOOL</li>
56+
<li>4 - FACILITATE THE ACTIVITY</li>
57+
<li>5 - SHARE YOUR EXPERIENCE</li>
58+
<li>6 - KEEP ON LEARNING</li>
59+
</ul>
60+
HTML,
61+
'button_text' => 'DOWNLOAD THE COMPLETE KIT',
62+
'button_url' => null,
63+
'contacts_section' => <<<HTML
64+
<h2>Contacts</h2>
65+
<p>For information, curiosities, and insights contact: <a href="mailto:codeweek@linksfoundation.com">codeweek@linksfoundation.com</a></p>
66+
HTML,
67+
'secondary_button_text' => 'Register activity',
68+
'secondary_button_url' => 'https://codeweek.eu/add?skip=1',
69+
'register_box_section' => <<<HTML
70+
<p>Every time you run an activity in class, during a school event, a team building, or a training course, register it on the map of the European Code Week with the hashtag <strong>#DreamJobsinDigital</strong>. Every organizer will receive a participation certificate for their commitment and will contribute to a campaign raising awareness of digital skills and careers.</p>
71+
<p>If you want to get in touch with an international group of enthusiastic teachers, sign up for the <a href="https://www.facebook.com/groups/774720866253044/?source_id=377506999042215" target="_blank" rel="noopener noreferrer">EU Code Week teachers' Facebook group</a>! To take a further step and collaborate with other schools in your country or across borders, join the <a href="https://codeweek.eu/codeweek4all" target="_blank" rel="noopener noreferrer">Code Week 4 All challenge</a>.</p>
72+
HTML,
73+
'meta_title' => 'EU Code Week 4 VET - Training Toolkit',
74+
'meta_description' => 'A practical toolkit for VET teachers to run inclusive, creative, project-based digital activities with students aged 13-18.',
75+
'position' => 0,
76+
'active' => true,
77+
]
78+
);
79+
}
80+
}
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# Training Resource Nova Template (VET Toolkit)
2+
3+
Use this as a copy/paste blueprint when creating a new `Training Resource` in Nova.
4+
5+
## Core
6+
7+
- **Slug**: `eu-code-week-4-vet`
8+
- **Card title**: `EU CODE WEEK 4 VET`
9+
- **Card author**: `Scientific author: Flavio Renga & Marta Risoli`
10+
- **Card image**: `https://...` (S3/CloudFront URL) or `/img/learning/...`
11+
- **Page title**: `EU CODE WEEK 4 VET`
12+
- **Hero author**: `VET TOOLKIT`
13+
14+
## Intro (Trix)
15+
16+
Paste:
17+
18+
```html
19+
<p>In today's rapidly evolving technological landscape, it is crucial to equip Vocational Education and Training (VET) students both with technical competencies—such as coding, 3D modelling, and the Internet of Things (IoT)—and with essential social skills, including collaboration, problem-solving, and creativity. These skills are not just valuable for those pursuing a career in the tech industry but can open doors to a wide range of opportunities across various fields.</p>
20+
<p>To support this vision, the VET Toolkit was created as part of the EU initiative Code Week to support educators to facilitate activities for students between 13 and 18 years of age.</p>
21+
<p>The toolkit is based on the Creative Learning approach and the TinkerCad tool to help students develop digital skills, acquire social and emotional competencies, and stay motivated to pursue careers in the digital field.</p>
22+
<p>The Creative Learning approach is based on the 4 Ps — Projects, Passion, Peers, and Play — and it offers a flexible framework that shifts the focus from direct instruction to personalized, hands-on exploration.</p>
23+
```
24+
25+
## Highlight box (Trix)
26+
27+
Paste:
28+
29+
```html
30+
<p><strong>Scientific author:</strong> Flavio Renga &amp; Marta Risoli - EdTech researchers at Fondazione LINKS, EU Code Week Italian HUB.</p>
31+
<p><strong>Instructional design, project management, internationalisation:</strong> Veronica Ruberti &amp; Lucia Terrone - Fondazione LINKS, EU Code Week Italian HUB Coordinator.</p>
32+
```
33+
34+
## Video URL
35+
36+
- Add YouTube URL (optional), e.g. `https://www.youtube.com/watch?v=XXXXXXXXXXX`
37+
38+
## Body image
39+
40+
- Add body image URL/path (optional), e.g. `https://your-bucket.s3.eu-west-1.amazonaws.com/training/vet-toolkit-cover.png`
41+
- **Body image alt text**: `EU Code Week 4 VET toolkit image`
42+
43+
## Content (Trix)
44+
45+
Paste:
46+
47+
```html
48+
<h2>Who is the VET Toolkit for?</h2>
49+
<p>The VET toolkit is aimed at VET teachers and educators who want to:</p>
50+
<ul>
51+
<li>Design and facilitate meaningful project-based learning experiences;</li>
52+
<li>Ensure that all students, including girls and those at risk of being left behind, are included and engaged;</li>
53+
<li>Foster essential social skills, including collaboration and problem-solving;</li>
54+
<li>Foster creativity and encourage the use of technology as a construction material;</li>
55+
<li>Create a growing community of VET schools and educators actively involved in EU Code Week.</li>
56+
</ul>
57+
<h2>How does the VET toolkit work?</h2>
58+
<p>In this page you will discover the Creative Learning approach through an asynchronous training path in small, sequential, easy-to-follow steps, using accessible language.</p>
59+
<p>The objective is to guide you from learning the Creative Learning approach to applying it in the classroom, supported by lesson plans and scaffolding materials.</p>
60+
<p><strong>Let's start!</strong></p>
61+
```
62+
63+
## PDF links section (Trix)
64+
65+
Paste:
66+
67+
```html
68+
<h2>PDF titles</h2>
69+
<ol>
70+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">DISCOVER THE CREATIVE LEARNING APPROACH</a></li>
71+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">CREATE THE LEARNING SPACE</a></li>
72+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">EXPERIMENT WITH THE TOOL</a></li>
73+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">FACILITATE THE ACTIVITY</a></li>
74+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">SHARE YOUR EXPERIENCE</a></li>
75+
<li><a href="https://..." target="_blank" rel="noopener noreferrer">KEEP ON LEARNING</a></li>
76+
</ol>
77+
```
78+
79+
## Buttons
80+
81+
- **Button text**: `DOWNLOAD THE COMPLETE KIT`
82+
- **Button URL**: `https://...` (full kit link)
83+
- **Secondary button text**: `Register activity`
84+
- **Secondary button URL**: `https://codeweek.eu/add?skip=1`
85+
86+
## Contacts section (Trix)
87+
88+
Paste:
89+
90+
```html
91+
<h2>Contacts</h2>
92+
<p>For information, curiosities, and insights contact: <a href="mailto:codeweek@linksfoundation.com">codeweek@linksfoundation.com</a></p>
93+
```
94+
95+
## Register box section (Trix)
96+
97+
Paste:
98+
99+
```html
100+
<p>Every time you run an activity in class, during a school event, a team building, or a training course, register it on the map of the European Code Week with the hashtag <strong>#DreamJobsinDigital</strong>. Every organizer will receive a participation certificate for their commitment and will contribute to a campaign raising awareness of digital skills and careers.</p>
101+
<p>If you want to get in touch with an international group of enthusiastic teachers, sign up for the EU Code Week teachers' Facebook group. To take a further step and collaborate with other schools in your country or across borders, join the Code Week 4 All challenge.</p>
102+
```
103+
104+
## SEO (optional)
105+
106+
- **Meta title**: `EU Code Week 4 VET – Training Toolkit`
107+
- **Meta description**: `A practical toolkit for VET teachers to run inclusive, creative, project-based digital activities with students aged 13-18.`
108+
109+
## Publish controls
110+
111+
- **Position**: lower number = appears earlier on `/training`
112+
- **Active**: enabled
109 KB
Loading

0 commit comments

Comments
 (0)