This commit is contained in:
alorig
2025-12-01 09:32:06 +05:00
parent aeaac01990
commit 71a38435b1
46 changed files with 75 additions and 17130 deletions

View File

@@ -145,48 +145,94 @@ export default function Review() {
// Publish to WordPress - single item
const handlePublishSingle = useCallback(async (row: Content) => {
console.log('[Review.handlePublishSingle] Starting publish for content:', {
console.group('🚀 [Review.handlePublishSingle] WordPress Publish Started');
console.log('📄 Content Details:', {
id: row.id,
title: row.title,
status: row.status,
timestamp: new Date().toISOString()
});
try {
console.log('[Review.handlePublishSingle] Calling API endpoint /v1/publisher/publish/');
// Log the payload being sent
const payload = {
content_id: row.id,
destinations: ['wordpress']
};
console.log('📦 Request Payload:', payload);
console.log('🌐 API Endpoint: POST /v1/publisher/publish/');
console.log('📡 Sending request to backend...');
const response = await fetchAPI('/v1/publisher/publish/', {
method: 'POST',
body: JSON.stringify({
content_id: row.id,
destinations: ['wordpress']
})
body: JSON.stringify(payload)
});
console.log('[Review.handlePublishSingle] API response received:', response);
console.log('📬 Full API Response:', JSON.parse(JSON.stringify(response)));
console.log('📊 Response Structure:', {
success: response.success,
has_results: !!response.results,
results_count: response.results?.length || 0,
has_error: !!response.error,
has_message: !!response.message
});
if (response.success) {
console.log('[Review.handlePublishSingle] ✅ Publish successful:', {
content_id: row.id,
response: response
});
toast.success(`Successfully published "${row.title}" to WordPress`);
loadContent(); // Reload to reflect changes
} else {
console.error('[Review.handlePublishSingle] ❌ Publish failed:', {
content_id: row.id,
// Handle the response with results array
if (response.success && response.results) {
console.log('✅ Overall publish success: true');
console.log('📋 Publish Results:', response.results);
// Check individual destination results
const wordpressResult = response.results.find((r: any) => r.destination === 'wordpress');
console.log('🎯 WordPress Result:', wordpressResult);
if (wordpressResult && wordpressResult.success) {
console.log('✅ WordPress publish successful:', {
external_id: wordpressResult.external_id,
url: wordpressResult.url,
publishing_record_id: wordpressResult.publishing_record_id
});
toast.success(`Successfully published "${row.title}" to WordPress`);
loadContent(); // Reload to reflect changes
} else {
const error = wordpressResult?.error || 'Unknown error';
console.error('❌ WordPress publish failed:', {
error: error,
result: wordpressResult
});
toast.error(`Failed to publish to WordPress: ${error}`);
}
} else if (!response.success) {
// Handle overall failure
console.error('❌ Publish failed (overall):', {
error: response.error,
message: response.message,
response: response
results: response.results
});
toast.error(`Failed to publish: ${response.error || response.message}`);
// Try to extract error from results
let errorMsg = response.error || response.message;
if (response.results && response.results.length > 0) {
const failedResult = response.results[0];
errorMsg = failedResult.error || failedResult.message || errorMsg;
}
toast.error(`Failed to publish: ${errorMsg || 'Unknown error'}`);
} else {
console.warn('⚠️ Unexpected response format:', response);
toast.error('Failed to publish: Unexpected response format');
}
} catch (error: any) {
console.error('[Review.handlePublishSingle] ❌ Exception during publish:', {
console.error('❌ Exception during publish:', {
content_id: row.id,
error: error,
message: error.message,
stack: error.stack
error_type: error.constructor.name,
error_message: error.message,
error_stack: error.stack,
error_object: error
});
toast.error(`Failed to publish to WordPress: ${error.message || 'Network error'}`);
} finally {
console.groupEnd();
}
}, [loadContent, toast]);