| 
									
										
										
										
											2024-07-20 12:41:30 +03:00
										 |  |  | #!/usr/bin/env bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-07-20 12:23:56 +03:00
										 |  |  | if [ ! -f .env ]; then | 
					
						
							|  |  |  |     echo "Missing .env file, cannot proceed." | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-07-20 12:41:30 +03:00
										 |  |  | script_dir=$(realpath $(dirname $0)) | 
					
						
							|  |  |  | output_dir="$script_dir/../docs" | 
					
						
							| 
									
										
										
										
											2024-07-20 12:23:56 +03:00
										 |  |  | mkdir -p "$output_dir" | 
					
						
							| 
									
										
										
										
											2024-07-20 12:41:30 +03:00
										 |  |  | rm -f "$output_dir"/* | 
					
						
							|  |  |  | rm -rf "$output_dir"/{assets,share} | 
					
						
							| 
									
										
										
										
											2024-07-20 12:23:56 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | source ./.env | 
					
						
							| 
									
										
										
										
											2024-07-20 12:26:52 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Download everything in output/notes.example.com/share/... | 
					
						
							|  |  |  | share_url="$SHARE_PROTOCOL://$SHARE_HOST/share/$ROOT_NOTE_ID" | 
					
						
							| 
									
										
										
										
											2024-07-20 13:08:22 +03:00
										 |  |  | wget -rpEk -e robots=off "$share_url" -P "$output_dir" | 
					
						
							| 
									
										
										
										
											2024-07-20 12:26:52 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Get rid of the domain in the output folder | 
					
						
							|  |  |  | mv "$output_dir/$SHARE_HOST"/* "$output_dir/" | 
					
						
							| 
									
										
										
										
											2024-07-20 12:40:03 +03:00
										 |  |  | rmdir "$output_dir/$SHARE_HOST" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Create home page with redirect | 
					
						
							|  |  |  | index_dest_path="$output_dir/index.html" | 
					
						
							|  |  |  | cp index.template.html "$index_dest_path" | 
					
						
							| 
									
										
										
										
											2024-07-20 13:08:22 +03:00
										 |  |  | sed -i "s/{{ROOT_NOTE_ID}}/$ROOT_NOTE_ID/g" "$index_dest_path" | 
					
						
							| 
									
										
										
										
											2024-07-20 13:10:19 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Rewrite links to get rid of the share folder | 
					
						
							|  |  |  | sed -i "s/<link href=\"\\.\\./<link href=\"\\./g" "$output_dir/share"/*.html | 
					
						
							|  |  |  | sed -i "s/<script src=\"\\.\\./<script src=\"\\./g" "$output_dir/share"/*.html | 
					
						
							|  |  |  | sed -i "s/rel=\"shortcut icon\" href=\"\\.\\./rel=\"shortcut icon\" href=\"\\./g" "$output_dir/share"/*.html | 
					
						
							|  |  |  | mv "$output_dir/share"/* "$output_dir" | 
					
						
							|  |  |  | rmdir "$output_dir/share" |